WebUI Framework

WebUIFramework2008 Documentation
WebUI Framework
Send comments on this topic.

Glossary Item Box

This section contains complete information on WebUI Framework.

In This Section

About WebUI Framework 2007 R2

About WebUI Framework 2008 R1

About WebUI Framework V3.0

© 2010 Intersoft Solutions Corp. All Rights Reserved.


About WebUI Framework 2008 R1

About WebUI Framework 2008 R1
Send comments on this topic.
WebUI Framework > About WebUI Framework 2008 R1

Glossary Item Box

As the strong foundation of all Intersoft's products, WebUI.NET Framework is continuously shaped to produce better performance and stability as well as major new features.

In This Section

Supported browsers and applications

New Features in 2008

Enhancements in existing products


What's new in 2008 R1

What's new in 2008 R1
Send comments on this topic.
WebUI Framework > About WebUI Framework 2008 R1 > What's new in 2008 R1

Glossary Item Box

This section summarizes features and enhancements that have been added or modified in WebUI.NET Framework 2008 R1.

In This Section

Supported browsers and applications

New Features in 2008


Supported browsers and applications

Supported browsers and applications
See Also Send comments on this topic.
WebUI Framework > About WebUI Framework 2008 R1 > What's new in 2008 R1 > Supported browsers and applications

Glossary Item Box

The 2008 version of WebUI.NET Framework is highly aimed to include extensive supports to new modern browsers such as Opera and Safari. This browser supports initiative is Intersoft's major move in delivering better cross-browser Web components. Through the advanced bridging technology, existing products and Web application can now be run automatically on Safari and Opera in all platforms they supported.

In This Section

Visual Studio 2008 Support

Safari Support

Opera Support

See Also

Other Resources
{New Features in 2008}


Visual Studio 2008 Support

Visual Studio 2008 Support
WebUI Framework > About WebUI Framework 2008 R1 > What's new in 2008 R1 > Supported browsers and applications > Visual Studio 2008 Support

Glossary Item Box

WebUI Studio.NET 2008 R1 has now support Visual Studio 2008 in several aspects:

    • Installation Package. The installer now checks for Visual Studio 2008 existence.
    • Toolbox. The components are now properly installed to Visual Studio 2008 Toolbox, if Visual Studio 2008 existed.
    • Designer. The components designer has been tested to work flawlessly in Visual Studio 2008 Design Time Environment.
    • Core Functions. The core components functionalities and behaviors have been tested to run perfectly in Visual Studio 2008 and ASP.NET 3.5.
    • LINQ Support. Databound components such as WebGrid, WebCombo and WebTreeView which have extensively supported DataSource control architecture, automatically supported LINQ through the new LinqDataSource available in Visual Studio 2008.

See Also

Related Sections
Safari Support
Opera Support


Safari Support

Safari Support
WebUI Framework > About WebUI Framework 2008 R1 > What's new in 2008 R1 > Supported browsers and applications > Safari Support

Glossary Item Box

WebUI.NET Framework 2008 implements full support for Safari 3.0 for Mac and Windows. We have taken every detailed effort to ensure all functionalities, behaviors and layout in existing products to run properly in Safari. Intersoft�??s proprietary technologies such as FlyPostBack�?� and Pixel-perfect�?� rendering have also been enhanced to support Safari browser.

The following screenshot shows one of the most advanced features in our flagship product, which runs flawlessly in Safari 3.0 for Windows.

Known Issues

Safari 3.0 support is implemented with several known limitations and minor issues due to the bugs in the browser. The following is the list of the known limitations and issues:

WebGrid.NET Enterprise 6.0

    • Tree lines display in Hierarchical Grid is not displayed properly (shrinked). However, other functions related to Hierarchical are working as expected.
    • Group Row width is not appropriately extended to 100% in first load. However, when user expands a row for the first time, all group rows will show proper width.

WebCombo.NET 4.0

    • None

WebInput.NET 3.0

    • None

WebDesktop.NET 2.5

    • IFrameShowLoader and IFrameAllowTransparency features are not supported in WebDesktopManager/WebTab/WebPaneManager.
    • Some mnemonic keys and browser-level shortcut keys are not supported (can�??t be overridden) at the Javascript-level codes. Thus, the keyboard shortcut feature in WebMenu and WebMenuBar might not be functioning properly.

WebTreeView.NET 1.0

    • None

See Also

Related Sections
Visual Studio 2008 Support
Opera Support


Opera Support

Opera Support
WebUI Framework > About WebUI Framework 2008 R1 > What's new in 2008 R1 > Supported browsers and applications > Opera Support

Glossary Item Box

WebUI.NET Framework 2008 implements full support for Opera 9.5 for Windows/Mac/Linux. With the full support for Opera browser, you can now enjoy our rich WebUI components in more platforms than ever before. Intersoft�??s advanced technologies such as FlyPostBack�?� and Pixel-perfect�?� rendering are fully supported in Opera.

The following screenshot shows the same screenshot as in Safari Support. You can compare and notice the identical rendering even in every detailed pixel.

Known Issues

Opera 9.5 support is implemented with several known limitations and minor issues due to the bugs in the browser. The following is the list of the known limitations and issues:

WebGrid.NET Enterprise 6.0

    • Selected row�??s border can�??t be applied due to Opera�??s severe performance issue when accessing element�??s style object.
    • Opera doesn�??t allow context menu (during right click) to be overridden programmatically via codes. Therefore when you right click on column header, cell, or other elements �?? the Opera�??s built-in context menu will still appear. When you press Esc, the Grid�??s context menu will be visible. Note that you still need to enable �??Allow page to receive right click�?� in Opera 9.5 Preferences (Javascript Options).

      Alternative Solution: WebGrid 6 includes special implementation for Opera as alternative right click solution. Instead of using right click, you can show context menu by pressing left mouse click on an element and hold for 3 seconds.
    • By default, Opera will show context menu when double click event occurred on a valid element such as text. This �??double click context menu�?� can�??t be overridden in the currently released version of Opera. This causes WebGrid to fail when user attempted to activate edit mode by double clicking on a cell. To workaround on this issue, press Enter to activate edit mode instead of double click �?? or double click at the far edge of the cell.

      Updates from Opera: Hotclick menu can only be disabled by the user in Opera preferences. When disabled, the double click event will function normally. This is bug 87804 which states that event.preventDefault() should be able to prevent it from appearing.

    • The �??column resize�?� mouse pointer can�??t be applied to the cell element when the mouse pointer is near the edge of the column header. You still can drag the column header to move it �?? however the mouse pointer didn�??t change it �??column resize�?�.
    • When navigating the textbox using TAB or SHIFT+TAB key in editing mode, Opera selects all text in the Grid before it activates the destination textbox. This results in screen flickering.

WebCombo.NET 4.0

    • None

WebInput.NET 3.0

    • None

WebDesktop.NET 2.5

    • IFrameShowLoader and IFrameAllowTransparency features are not supported in WebDesktopManager/WebTab/WebPaneManager.
    • Some mnemonic keys and browser-level shortcut keys are not supported (can�??t be overridden) at the Javascript-level codes. Thus the keyboard shortcut feature in WebMenu and WebMenuBar might not be functioning properly.

WebTreeView.NET 1.0

    • None

See Also

Related Sections
{Visual Studio 2008 Support}
{Safari Support}


New Features in 2008

New Features in 2008
WebUI Framework > About WebUI Framework 2008 R1 > What's new in 2008 R1 > New Features in 2008

Glossary Item Box

In this section, you will find a detailed list of new features in WebUI.NET Framework 2008 R1 and how you can utilize them to gain performance benefits for your web application.

In This Section

New Generic-based Collection, Interface and Object

New Infrastructure for Silverlight-based Component Products

New Component for Silverlight�?� 1.0 Platform: WebAqua

New Component: WebScheduler

New Component: WebCallOut

See Also

Other Resources
{Supported browsers and applications}


New Generic-based Collection, Interface and Object

New Generic-based Collection, Interface and Object
WebUI Framework > About WebUI Framework 2008 R1 > What's new in 2008 R1 > New Features in 2008 > New Generic-based Collection, Interface and Object

Glossary Item Box

WebUI.NET Framework 2008 takes its base architecture to the next level by implementing the new Generic feature introduced in .NET Framework 2.0.
This new Generic architecture enables simplified object model and consistent interface and ease-of-use across all Intersoft�??s products. This new architecture is used in latest Intersoft�??s products such as in WebScheduler and WebAqua for Silverlight.

See Also

Other Resources
{New Infrastructure for Silverlight-based Component Products}
{New Component for Silverlight�?� 1.0 Platform: WebAqua}
{New Component: WebScheduler}
{New Component: WebCallout}


New Infrastructure for Silverlight-based Component Products

New Infrastructure for Silverlight-based Component Products
WebUI Framework > About WebUI Framework 2008 R1 > What's new in 2008 R1 > New Features in 2008 > New Infrastructure for Silverlight-based Component Products

Glossary Item Box

WebUI.NET Framework 2008 introduces a new framework assembly to support the infrastructure of forthcoming Silverlight-based components. The new assembly named ISNet.WebUI.Silverlight, is designed to be part of WebUI.NET Framework which built upon the rock-solid architecture and foundation available in WebUI.NET Framework.

ISNet.WebUI.Silverlight is going to be the foundation and base libraries for all Silverlight-based products such as WebAqua. ISNet.WebUI.Silverlight contains high-level encapsulation and implementation of Silverlight�??s object model in the fashion of ASP.NET server control.

For instance, the WebUI.NET Framework for Silverlight includes detailed object model for customizing brushes, gradients, gradient stops, colors, and much more. See the following illustration to get a better picture.

See Also

Other Resources
{New Generic-based Collection, Interface and Object}
{New Component for Silverlight�?� 1.0 Platform: WebAqua}
{New Component: WebScheduler}
{New Component: WebCallout}


About WebUI Framework 2007 R2

About WebUI Framework 2007 R2
Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2

Glossary Item Box

WebUI.NET Framework 2007 R1 includes more than dozens of new features that help Intersoft�??s upcoming products to run smoother in better performance, and even more scalable. The 2007 R1 version of the Framework also includes major architectural changes as most of them are requested by our customers.

Detailed changes that may affect WebCombo.NET 4.0, as well as new features available in the Framework 2006 R2 are listed in following section.

In This Section

Changes in WebUI.NET Framework that may affect WebCombo.NET 4.0 functionality

New Features in 2007 R1

Benefits introduced in 2007 R1

Backward Compatibility


Changes in WebUI.NET Framework that may affect 2007 platform products

Changes in WebUI.NET Framework that may affect 2007 platform products
See Also Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2 > Changes in WebUI.NET Framework that may affect 2007 platform products

Glossary Item Box

The following changes have been made to further enhance the performance of the web application in overall:

  • ViewStateStorage
    The default value for this feature is now set to Client instead of PageCache. The decision to switch the default value has been deeply considered by our development team as we received huge feedbacks from customers.
    The Client option is the preferred default value recognizing several considerations:
    • The standard ASP.NET controls saved their view state to Client by default. Therefore, our switching to Client value is to simply conforming the standard mechanism.
    • The previous ViewStateStorage�??s default value which is PageCache, requires more server side resources especially the built-in worker process�?? private memory resources.
If your existing web application used different option for ViewStateStorage other than PageCache, such as None or Session, then this default value change will not impact the functionality of WebCombo.NET in your existing web application.
  • Selective view state items through new ViewStateItems property
    Along with the default value change in ViewStateStorage to use Client option, we have designed that only native type properties are saved to the view state by default.

    In previous version, all properties of the control are saved to the view state which including collections, styles and other complex objects �?? which causing a huge amount of view state. Because of this huge amount of view state, this makes the Client option of the ViewStateStorage to be not effective and not practical in high performance usage.

    For more information about this new feature, read Selective ViewState saving with the new ViewStateItems feature.

    This new design will not impact to WebCombo.NET when used in Bound mode, because fundamentally the data collection will be re-populated on each data binding mechanism. In Unbound mode, the Rows or Cells collection that modified or populated in code behind (runtime) will not be persisted on each postback. However with the consideration of full backward compatibility, we have automatically set the ViewStateItems to BehaviorAndCollection when the WebCombo.NET is configured in Unbound mode so that the Rows and Cells are still persisted as normally.

    With this new design and automatic backward compatibility mechanism for Unbound mode, WebCombo.NET 4.0 enables your existing web application to gain higher performance and without affecting the existing implementation.

    To learn more about ViewStateStorage and its related features for best performance and usage, please read Best practices and common scenarios for ViewStateStorage�?� usage.

See Also

Other Resources
Benefits introduced in 2007 R2
{Backward Compatibility}


New Features in 2007 R2

New Features in 2007 R2
Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2

Glossary Item Box

In this section, you will find a detailed list of new features in WebUI.NET Framework 2007 R2 and how you can utilize them to gain performance benefits for your web application.

Enhanced ViewStateStorage�?� with the new OptimizedState architecture

Selective ViewState saving with the new ViewStateItems feature

New Cache-To-Disk option for ViewStateStorage�?�

Best practices and common scenarios for ViewStateStorage�?� usage

New Deployment Manager

New SmartWebResources�?� Framework

New License Manager

All-new Vista-style user interface for Windows GUI application


Enhanced ViewStateStorage�?� with the new optimized architecture

Enhanced ViewStateStorage�?� with the new optimized architecture
See Also Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > Enhanced ViewStateStorage�?� with the new optimized architecture

Glossary Item Box

In previous version of WebUI.NET Framework, the viewstate size of a control is relatively large since it is using BinarySerialization to serialize the entire control. While the size issue is not significant when saved to server-side storage, it introduced barrier when saved to Client.

In this new version, we have enhanced the ViewStateStorage�?� feature using new OptimizedState architecture that based on �??Delta changes�?�. The viewstate size of a control now has been reduced significantly (approximately 60 percent smaller) and thus, allow ViewStateStorage to be saved to Client (as in standard .NET controls).

In 2007 R1, we have also improved the ViewStateStorage�?� implementation when saved to PageCache option. Although the default ViewStateStorage in this new version is set to Client, you can now safely change it back to PageCache if required. The memory allocation required by the PageCache implementation has been optimized by 70 percent. The new PageCache implementation has also been improved to avoid memory leaks.

See Also

Other Resources
{Selective ViewState saving with the new ViewStateItems feature}
{New Cache-To-Disk option for ViewStateStorage�?�}
{Best practices and common scenarios for ViewStateStorage�?� usage}


Selective ViewState saving with the new ViewStateItems feature

Selective ViewState saving with the new ViewStateItems feature
See Also Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > Selective ViewState saving with the new ViewStateItems feature

Glossary Item Box

Related to new enhancement to ViewStateStorage�?� implementation, this new version of Framework introduced ViewStateItems feature that works in conjunction with ViewStateStorage.

This feature is resembled as new property �??ViewStateItems�?� which is visible to all Intersoft�??s components that used this new version of Framework. ViewStateItems allows advanced developers to set what kind/type of items that should be saved in the ViewState. The default value of ViewStateItems is Behavior.

The following is the explanation of each option available in ViewStateItems:

  • Behavior (Default)
    This value means only behavior-kind properties that are saved to ViewState. Behavior properties are native-type properties or enumerator-type properties, such as EnableAutoPostBack.
  • BehaviorAndCollection
    This value means behavior-kind properties and collection should be saved to ViewState. In most cases, Collection-kind properties such as Rows do not needed to be saved in ViewState because they are either specified in design time or repopulated during postback/callback.
  • BehaviorAndStyle
    This value indicates that behavior-kind properties and style should be saved to ViewState. Collection-kind properties are not included. If you are using default style or applying the style at design-time or enabling theme architecture, you generally do not need to use this option.
  • All
    This value indicates that all properties in the control should be saved to the ViewState.

    This is the default value of all controls in the previous version of WebUI.NET Framework. In some rare cases, you might need to simulate the previous version�??s state behavior.

This feature can be set for application-wide via web.config. The key is ViewStateItems. Sample usage:

<add key=�?�ISNet.WebUI.WebCombo.v4_0_7200.ViewStateItems�?� value=�?�Behavior�?� />

See Also

Other Resources
Enhanced ViewStateStorage�?� with the new optimized architecture
{New Cache-To-Disk option for ViewStateStorage�?�}


New Cache-To-Disk option for ViewStateStorage�?�

New Cache-To-Disk option for ViewStateStorage�?�
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New Cache-To-Disk option for ViewStateStorage�?�

Glossary Item Box

In previous version of Framework, we have introduced three kind of storage for saving ViewState. They are PageCache, Session and Client.

In 2007 R2, the Framework now includes new option to save the state to physical disk. The option called FileServer enables the view state to be saved to a physical disk in the local computer or a shared drive in network.

The FileServer cache option solved many barriers around view state topic. With FileServer, you no longer have to worry about memory leaks or limited server resources.

Some of benefits using FileServer cache are:

    • Highly scalable. You can choose a network drive to store the caches which enable multiple web servers to access the state.
    • Decent performance. With more than dozen of high performance hard drives, you can choose a near-memory speed with high random access and sequential read write hard drive to store the caches.
    • Easily extensible. Unlike memory (RAM), you can easily extend hard drives with larger one when it becomes insufficient.

Features of FileServer:

    • Automatic cleaning. When the cache for the viewstate has expired, the caches will be automatically deleted.
    • Easily configurable for application-wide through web.config.
    • Allow customizations on cache policy and expiration duration.

In This Section

How-to: Use file server for an instance of control

How-to: Configure file server to use shared network drive

See Also

Related Sections
{Enhanced ViewStateStorage�?� with the new optimized architecture}
{Selective ViewState saving with the new ViewStateItems feature}


How-to: Use file server for an instance of control

How-to: Use file server for an instance of control
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New Cache-To-Disk option for ViewStateStorage�?� > How-to: Use file server for an instance of control

Glossary Item Box

The following steps demonstrate how to use file server to store the viewstate of WebCombo.NET 4.0 control:

  1. Set ViewStateStorage to FileServer.
  2. Set ViewStateServerConnection to �??path=c:\CacheStorage�?�.

The specified path (eg. c:\CacheStorage) requires read and write permission for aspnet_wp worker process (in IIS 5.x) or iis_wpg (in IIS 6+)

See Also

Tasks
{How-to- Configure file server to use shared network drive}
{FAQ and How-to Topics}

Concepts
{New Cache-To-Disk option for ViewStateStorage�?�}


How-to: Configure file server to use shared network drive

How-to: Configure file server to use shared network drive
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New Cache-To-Disk option for ViewStateStorage�?� > How-to: Configure file server to use shared network drive

Glossary Item Box

The following steps demonstrate how to use a shared network drive for the file server:

  1. Set ViewStateStorage to FileServer
  2. Set ViewStateServerConnection to �??path=\\CacheServer\CacheStorage�?�
  3. Configure the identity of the account that has an access to the server and network resources in web.config.

Sample web.config setting for identity:

<system.web>

<identity impersonate=�?�true�?� userName=�?�CacheServer\CacheAccount�?� password=�?�CachePassword�?� />

</system.web>

Parameters for ViewStateServerConnection

The following lists the parameters that can be used in ViewStateServerConnection:

  • path
    Specify the path of the file server storage.

  • expireduration
    Specify the time in minutes how long should a cache stay in the storage.

  • expirationpolicy
    Specify the expiration policy of the cache. The valid values are Sliding, Absolute.

Each parameter should be separated by using ; character.

See Also

Tasks
{How-to: Using file server for an instance of control}
{FAQ and How-to Topics}

Concepts
{New Cache-To-Disk option for ViewStateStorage�?�}


Best practices and common scenarios for ViewStateStorage�?� usage

Best practices and common scenarios for ViewStateStorage�?� usage
See Also Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > Best practices and common scenarios for ViewStateStorage�?� usage

Glossary Item Box

In this section, you can learn the best practices and common scenarios to utilize the ViewStateStorage and its related features.

  1. Most recommended configuration-set
    This configuration-set is based on common scenario in web application development. If your web application used the following methodology, then this configuration is recommended for you:

    • Most user interface settings, behaviors and collection are defined in design time.
    • Styles are either applied in design time or configured in theme architecture or loaded programmatically.
    • Databound controls such as WebGrid or WebCombo are configured to use data source controls.

      Note that this configuration will automatically become the default when you upgraded to 2007 R1 (unless you specified other values in web.config).

      This configuration consists of:
      ViewStateStorage = Client
      ViewStateItems = BehaviorConfiguration for highest performance application

  2. Configuration for highest performance application
    This configuration is recommended if your application requires highest performance.

    When you choose this configuration, you need to design your application carefully so that all important settings are restored during postback. This is required because the controls state are not saved and hence will not be restored during postback.

    This configuration consists of:
    ViewStateStorage = None

    This configuration can help to improve performance because there are no extra efforts required for serializing the control into view state.

    Note that this setting does not affect control state which is used to store important information such as latest user interface state that changed by user in runtime.
  3. Configuration for highest availability application
    This configuration is preferred for best availability to your web application. This configuration is suitable for the following scenarios:
    • The web application is running on multiple servers (web garderning) and thus requires the cache to be properly accessible across servers.
    • The web application is complex having most configurations populated dynamically at runtime (through code behind).
    • Most user interface settings, behaviors, or collections are configured at runtime (through code behind).
    • You do not want extra efforts in determining which type of property should be saved to the view state. Fundamentally you would like to force maximum reliability to your web application.

      This configuration consists of:
      ViewStateStorage = FileServer
      ViewStateItems = All

ViewStateStorage, ViewStateItems and ViewStateServerConnection can be applied to application-wide via web.config configuration.

In this section, you can learn the best practices and common scenarios to utilize the ViewStateStorage and its related features.

  1. Most recommended configuration-set
    This configuration-set is based on common scenario in web application development. If your web application used the following methodology, then this configuration is recommended for you:
    • Most user interface settings, behaviors and collection are defined in design time.
    • Styles are either applied in design time or configured in theme architecture or loaded programmatically.
    • Databound controls such as WebGrid or WebCombo are configured to use datasource controls.

      Note that this configuration will automatically become the default when you upgraded to 2007 R1 (unless you specified other values in web.config).

      This configuration consists of:
      ViewStateStorage = Client
      ViewStateItems = BehaviorConfiguration for highest performance application

  3. Configuration for highest performance application
    This configuration is recommended if your application requires highest performance.

    When you choose this configuration, you need to design your application carefully so that all important settings are restored during postback. This is required because the controls state are not saved and hence will not be restored during postback.

    This configuration consists of:
    ViewStateStorage = None

    This configuration can help to improve performance because there are no extra efforts required for serializing the control into view state.

    Note that this setting does not affect control state which is used to store important information such as latest user interface state that changed by user in runtime.
  4. Configuration for highest availability application
    This configuration is preferred for best availability to your web application. This configuration is suitable for the following scenarios:
    • The web application is running on multiple servers (web garderning) and thus requires the cache to be properly accessible across servers.
    • The web application is complex having most configurations populated dynamically at runtime (through code behind).
    • Most user interface settings, behaviors, or collections are configured at runtime (through code behind).
    • You do not want extra efforts in determining which type of property should be saved to the view state. Fundamentally you would like to force maximum reliability to your web application.

      This configuration consists of:
      ViewStateStorage = FileServer
      ViewStateItems = All

ViewStateStorage, ViewStateItems and ViewStateServerConnection can be applied to application-wide via web.config configuration.

See Also

Other Resources
{Enhanced ViewStateStorage�?� with the new optimized architecture}
{Selective ViewState saving with the new ViewStateItems feature}
{New Cache-To-Disk option for ViewStateStorage�?�}


New Deployment Manager

New Deployment Manager
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New Deployment Manager

Glossary Item Box

The new deployment manager introduced in WebUI.NET Framework 2007 R2 is designated to help developers to easily manage configurations during deployment phase.

With Deployment Manager, you can now quickly configure the common settings required in deployment such as entering runtime license keys, entering view state configurations, and so on -- through user-friendly Windows GUI application.

You can also inspect all available settings that you can easily apply to tune up application performance, customize application-wide behaviors, customize product-specific settings and much more.

See Also

Other Resources
{New SmartWebResources�?� Framework}
{New License Manager}


New SmartWebResources�?� Framework

New SmartWebResources�?� Framework
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework

Glossary Item Box

At Intersoft Solutions, we constantly conduct extensive research and development to deliver new innovations that help developers become more productive by reducing the efforts and overwhelming complexity in both development and deployment stage.

The brand-new SmartWebResources�?� Framework is one of the exciting technology that we had to offer in 2007 R1 platform. The key objective of SmartWebResources�?� is to eliminate the external physical resources �?? such as scripts, images, etc �?? which required by web components to function properly.

Problems introduced in traditional web components approach

Most web components require client resources such as scripts, images, stylesheets and other client files to gear up some advanced and powerful features. Normally these client resources are delivered through physical client files. In ASP.NET, these files may be located in aspnet_client folder or other common folder which needs to be mapped properly into IIS virtual path in order to function properly.

There are several issues with this traditional approach which causing inefficiency, such as:

  • Special IIS virtual directory is required to store the client resources. In several webhosting that does not support manual virtual directory setup, this can be a significant deployment problem.
  • Special attention and more efforts are required during deployment.
  • Versioning problems. This could cause overwhelming complexity while maintaining the versions of the client resources for specific components.
  • Complexity in maintaining control-specific�??s resources folder. For instance, some scripts are located in folder X, images in folder Y, and other scripts in folder Z.

The solution

The solution to the several issues mentioned above can be achieved by eliminating the requirements to use physical client resources. Thanks to the new SmartWebResources�?� Framework, the physical client resources can be completely eliminated.

The client resources are still required in our web components. It is just they are now stored in �??virtual location�?� which does not require the awareness of developers. They are fetched and delivered to client (browsers) in a new, different way.

In This Section

Introducing SmartWebResources�?�

How does SmartWebResources�?� work

Compatibility with traditional approach

SmartWebResources�?� modes

Features and benefits introduced by SmartWebResources�?�

What are included resources in SmartWebResources Resource Assembly

See Also

Tasks
{How-to: Configure SmartWebResources in a web application}
{How-to: Modify SmartWebResource mode for application-wide configuration}
{How-to: Ensure SmartWebResources is working properly}
{FAQ: I have enabled SmartWebResources, but some of my images are missing. What happened?}


Introducing SmartWebResources�?�

Introducing SmartWebResources�?�
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework > Introducing SmartWebResources�?�

Glossary Item Box

ASP.NET 2.0 introduced Web Resources feature, which allows developers to embed the client resources into assemblies. They are fetched through the built-in WebResource.axd HTTP Handler that is specially designed for this purpose.

However, our SmartWebResources technology does not use the built-in ASP.NET 2.0�??s Web Resources due to several limitations and inflexibility and thus does not meet our requirements and does not suit into our products mechanism.

SmartWebResources�?� is designed to overcome the limitations of ASP.NET 2.0�??s Web Resources. Furthermore, it is developed with more advanced functionality and with better performance since it does not use Reflection.

SmartWebResources�?� takes advantage of custom HTTP Handler extensibility and tightly integrated into WebUI.NET Framework runtime to deliver high performance, secure and highly reusable components.

See Also

Related Sections
How does SmartWebResources�?� work
SmartWebResources�?� modes
Features and benefits introduced by SmartWebResources�?�


How does SmartWebResources�?� work

How does SmartWebResources�?� work
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework > How does SmartWebResources�?� work

Glossary Item Box

Each product has their own resources such as scripts and images. For instance, previously these resources are stored in /CommonLibrary/Shared for core framework resources. WebGrid�??s resources are stored in /CommonLibrary/WebGrid/v4_0_6200.

With SmartWebResources, they are now embedded into .NET assembly. Unlike ASP.NET�??s built-in Web Resources which embeds client resources in main assembly, SmartWebResources stores each product�??s client resources in separate assembly. This enables flexible update (maintenance) to the client resources without has to rebuild the main server-side assembly.
SmartWebResources implements each product�??s client resources as separate resources assembly. Each product that supports SmartWebResources technology will have a companion resources assembly. The resources assembly commonly has this format: [ProductAssemblyFullName].Resources.dll.
For instance, the assembly hierarchy for WebCombo.NET 4.0 looks like in the following illustration:

The SmartWebResources works by intercepting the HTTP request through custom HTTP handler that extended in the Framework runtime. The SmartWebResources will then dispatch the request and automatically determining the correct resources assembly, then finally fetching the resource from the assembly and deliver it to the client.
The way it works can be seen in the following illustration:

With SmartWebResources enabled, you no longer need to aware what you should do to configure the client scripts virtual directory, or where to locate/store it. You simply ensure that the resources assemblies are in the Bin folder of your application. For more information, read How-to: Configure SmartWebResources in a web application.

See Also

Tasks
{How-to: Configure SmartWebResources in a web application}
{How-to: Modify SmartWebResource mode for application-wide configuration}
{How-to: Ensure SmartWebResources is working properly}

Related Sections
SmartWebResources�?� modes
Features and benefits introduced by SmartWebResources�?�


Compatibility with traditional approach

Compatibility with traditional approach
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework > Compatibility with traditional approach

Glossary Item Box

For compatibility and flexibility in deployment, we have decided to keep the support of traditional client resources approach. Although SmartWebResources�?� is the preferred and recommended solution for delivering client resources in a web application, some legacy applications or application with specific requirements to use physical IIS-based client resources might need to use traditional physical client files.

To enable compatibility with physical client files, see SmartWebResources�?� Modes topic.

In 2007 R1 platform, all products are packaged with both CommonLibrary client resources (mapped to CommonLibrary virtual directory �?? this virtual directory will still be created during installation whenever possible) and SmartWebResources�?�.

Note that SmartWebResources�?� is a runtime feature. During design-time such as in Preview Mode, the physical resources in CommonLibrary are still required. However, there are no extra efforts needed to be done by developers in most common cases.

See Also

Related Sections
{SmartWebResources�?� modes}
Features and benefits introduced by SmartWebResources�?�


SmartWebResources�?� modes

SmartWebResources�?� modes
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework > SmartWebResources�?� modes

Glossary Item Box

SmartWebResources introduced 5 modes in its initial implementation. These modes are designed to help developers customize the behavior of SmartWebResources.

Mode Name | Description
Auto | This is the default value of SmartWebResources. This mode will automatically determine whether SmartWebResources�?? configuration is valid, and whether it is ready to be used. This mode will attempt to use SmartWebResources whenever possible. When it detects invalid configuration or usage of product that does not support SmartWebResources, it will automatically fallback to traditional physical client resources approach. See fallback conditions in the following.
Always | This mode indicates that SmartWebResources should be always enabled for the designated control.
Never | This mode indicates that SmartWebResources should never be used for the designated control. You can choose this mode to use traditional physical client resources.
ScriptOnly | This mode indicates that only �??Script�?�-kind items should be handled by SmartWebResources.
ResourceOnly | This mode indicates that all other resources except �??Script�?�, such as images, styles, xml files etc. should be handled.

SmartWebResources automatic fallback conditions

The following lists the conditions why SmartWebResources decided to fallback to traditional physical client resources. Note that these conditions only apply for �??Auto�?� mode.

  • The product does not support SmartWebResources. All 2007 R1 products have been revamped to support SmartWebResources. However, when you tried to use the new framework in the legacy components such as WebCombo.NET 3.0, you will find out that the SmartWebResources didn�??t work.
  • The configuration is not valid. For instance, the http handler is not registered in the web.config. To learn more about configuring SmartWebResources, see How-to: Configure SmartWebResources in a web application.
  • The resources assembly files cannot be found. For instance, ISNet.WebUI.WebCombo.Resources.dll does not exist in the Bin folder of the application.
  • ScriptDirectory or SharedScriptDirectory has been changed (not default). For best compatibility, SmartWebResources detects whether an existing web application was configured to use specific script directory other than the default. For instance, if the ScriptDirectory is set to �??~/SomeOtherFolders�?� in the control tag or in web.config, then SmartWebResources will not attempt to enable itself.
  • ImagesDirectory has been changed (not default). With same behavior as ScriptDirectory mentioned above, the SmartWebResources will not attempt to enable itself when it detects customized ImagesDirectory. This ensures that your existing web application runs perfectly after you migrate to the new framework.
  • Related to 2 last points above. If ScriptDirectory is customized, but ImagesDirectory is using default value (not customized), the SmartWebResources will fallback to ResourceOnly mode. That means, images and other client resources will still be handled by SmartWebResources. Vice versa, the SmartWebResources will fallback to ScriptOnly mode if only ImagesDirectory value is customized.

See Also

Tasks
{How-to: Configure SmartWebResources in a web application}
{How-to: Modify SmartWebResource mode for application-wide configuration}
{How-to: Ensure SmartWebResources is working properly}

Related Sections
Features and benefits introduced by SmartWebResources�?�
What are the included resources in SmartWebResources Resource Assembly


Features and benefits introduced by SmartWebResources�?�

Features and benefits introduced by SmartWebResources�?�
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework > Features and benefits introduced by SmartWebResources�?�

Glossary Item Box

Here are lists of all features and benefits in SmartWebResources�?�:

  • Better throughput: IIS6 Kernel-level Caching
  • More secure: Does not use query string
  • Faster performance: Does not use Reflection. The SmartWebResources does not use WebResourceAttribute mechanism, so avoiding the needs to use Reflection.
  • Smaller output: Simpler path formatting and does not use long-encrypted string. For instance, the built-in ASP.NET 2.0�??s Web Resource commonly produced a web resource url such as /WebResource.axd?d=X3DBWN0WSNooBvJskjFXaHbLs_89EdATLyWdaCXXWBuO_EqnAFr_Di1ag4ubAsDdMu4h_k0tff_bX4YhT_csWQ2&t=632939437740000000. In SmartWebResources, the output url format is as simple as /ISRes.axd?C/WebCombo.js/4072001
  • Hassle-free Deployment: No more external client resources are required during deployment. Only one assembly is required to be copied into your app's bin folder.
  • Reduced Complexity: SmartWebResources includes automatic web resources configuration. When in auto mode, the client resources will be retrieved from Web Resources assembly whenever possible. Otherwise, it will automatically fallback the retrieval from traditional external resources which stored in IIS virtual directory (also known as CommonLibrary)
  • Easy to Configure: Easily configure the settings from application level. You can also customize the settings for individual control's instances for more precise control.
  • Flexibility: You can easily switch between SmartWebResources or external resources mode through EnableWebResources setting.
  • Seamless integration with VS 2005: The handlers and resources configuration can seamlessly added to your web application configuration.
  • FileSystem Project Support: For better design-time experience in FileSystem web project, the image resources are now properly displayed in the Visual Studio 2005 designer. Thanks to SmartWebResources Framework that provides automatic url conversion mechanism in design-time.

See Also

Related Sections
How does SmartWebResources�?� work
What are the included resources in SmartWebResources Resource Assembly


What are the included resources in SmartWebResources Resource Assembly

What are the included resources in SmartWebResources Resource Assembly
See Also Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework > What are the included resources in SmartWebResources Resource Assembly

Glossary Item Box

A SmartWebResources�?? resource assembly generally includes the following client resources:

    • Script
      Contains scripts required by the control to function properly.
    • Images.
      Contains default images that required by the control and all images that required by predefined theme.
    • Other client resources:
        • XML resources, such as localization files.
        • Style sheets for static control-specific rendering.
        • Html files for static control-specific functions.

See Also

Tasks
{FAQ: I have enabled SmartWebResources, but some of my images are missing. What happened?}

Related Sections
SmartWebResources�?� modes
Features and benefits introduced by SmartWebResources�?�


How-to: Configure SmartWebResources in a web application

How-to: Configure SmartWebResources in a web application
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework > How-to: Configure SmartWebResources in a web application

Glossary Item Box

If you want to configure SmartWebResources after you created a new web application, please do following steps:

  1. Drag one of the 2007 control to the design surface. For instance, WebCombo.
  2. Right click on the control, choose Register SmartWebResources�?� from the context menu. See following screenshot:

You only need to perform this instruction once throughout development for the specific web application.

If you want to configure SmartWebResources on existing web application after you migrated to 2007 products platform, please do following steps:

  1. Ensure that assemblies have been updated to use 2007 controls references.
  2. Open one of the WebForm in the application that contains at least one Intersoft control.
  3. Right click on the control, choose Register SmartWebResources�?� from the context menu.

See Also

Tasks
{How-to: Modify SmartWebResource mode for application-wide configuration}
{How-to: Ensure SmartWebResources is working properly}
{FAQ and How-to Topics}

Concepts
{How does SmartWebResources�?� work}
{SmartWebResources�?� modes}
{Features and benefits introduced by SmartWebResources�?�}


How-to: Modify SmartWebResource mode for application-wide configuration

How-to: Modify SmartWebResource mode for application-wide configuration
See Also Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework > How-to: Modify SmartWebResource mode for application-wide configuration

Glossary Item Box

You can easily apply the SmartWebResource mode to the entire web application without has to change the value to each control�??s instance.

For instance, you may want to set the SmartWebResource mode to handle only script files. In this scenario, you can do the following to apply the mode into entire web application:

  1. Open web.config file of the designated web application.
  2. Insert the following key inside the <appSettings>node.

    <add key=�?�ISNet.WebUI.WebCombo.v4_0_7200.EnableWebResources�?� value=�?�ScriptOnly�?� />

Note that the key is product and version specific. If you want to apply the same mode to another Intersoft�??s control, then you need to add the key that points to the appropriate product name and key.

See Also

Tasks
How-to: Ensure SmartWebResources is working properly
{FAQ: I have enabled SmartWebResources, but some of my images are missing. What happened?}
{FAQ and How-to Topics}

Concepts
{How does SmartWebResources�?� work}
SmartWebResources�?� modes
{Features and benefits introduced by SmartWebResources�?�}


How-to: Ensure SmartWebResources is working properly

How-to: Ensure SmartWebResources is working properly
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework > How-to: Ensure SmartWebResources is working properly

Glossary Item Box

You can verify whether SmartWebResources is working properly or not, by looking at following conditions:

If the mode is set to Auto; scripts, images and other general client resources should be loaded from http handler. If your page is working fine and the controls are functioning properly, this indicates that SmartWebResources has been enabled and running properly.

To know whether a script is loaded from http handler, you can do the following:

  1. Right click on the page which is currently running in Internet Explorer browser.
  2. Choose View Source.
  3. Find <script> tag that refers to Intersoft�??s core script. For instance, ISCore.js
  4. The src of the <script> tag should look like following:

    <script type="text/javascript" src="/AppName/ISRes.axd?F/ISCore.js/305000400">

To know whether an image or general resource is loaded from http handler, you can do the following:

  1. Right click on the page which is currently running in Internet Explorer browser.
  2. Choose View Source.
  3. If you know that a control is rendering an image, you can find the image name in the Search box.
  4. The src of the <img>tag should look following:

    <img src=�?�/AppName/ISRes.axd?C/DD4_Active.gif�?� />
If there is script error during page loading or missing image sign, it is most likely that the SmartWebResources has not been configured properly. Please refer to How-to: Configure SmartWebResources in a web application in order to configure SmartWebResources properly.

See Also

Tasks
FAQ: I have enabled SmartWebResources, but some of my images are missing. What happened?
{FAQ and How-to Topics}

Concepts
{How does SmartWebResources�?� work}
{SmartWebResources�?� modes}
{Features and benefits introduced by SmartWebResources�?�}


FAQ: I have enabled SmartWebResources, but some of my images are missing. What happened?

FAQ: I have enabled SmartWebResources, but some of my images are missing. What happened?
See Also Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New SmartWebResources�?� Framework > FAQ: I have enabled SmartWebResources, but some of my images are missing. What happened?

Glossary Item Box

When SmartWebResources is set to Auto (by default), it will automatically attempt to load scripts, images and other control-specific resources from resource assembly instead of physical files. If you have just migrated an existing web application to 2007 products platform, there are several cases where the images might be missing as indicated in the following:

  • You have customized the images to use your specific artworks, but the theme was applied from predefined theme. For instance, when you apply �??Office 2003�?� style from Layout Manager, it will set the image name properly to all necessary elements such as the dropdown button and so on. The image name originally was �??O2003_Button_Active.gif�?�. However, since you have customized the image to use your own specific artwork, you may have changed it to �??Artwork_Button_Active.gif�?�.

    In this context, SmartWebResources will not be able to get �??Artwork_Button_Active.gif�?� from the resource assembly because it does not exist in the resource assembly.

    There are two methods for resolving this issue:
    1. Set SmartWebResources mode to �??ScriptOnly�?�. This enables your web application to continue using the physical images files that reside in your application.
    2. Move all application-specific images and resources from CommonLibrary/Images to the web application folder. Next, you change the ImagesFolder of the control to point to appropriate folder. Eg. ~/Images.

      When you change the ImageFolder, the �??auto�?� mode of SmartWebResources will not handle the general resources such as images.

See Also

Tasks
{FAQ and How-to Topics}

Concepts
{How does SmartWebResources�?� work}
{SmartWebResources�?� modes}
{Features and benefits introduced by SmartWebResources�?�}


New License Manager

New License Manager
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > New License Manager

Glossary Item Box

The new license manager is tailored to help you manage your licenses easier than ever. In our previous product package, you are required to enter license key during installation. If you are incorrectly entering the key, you need to reinstall the whole package in order to enter the correct key.

The new License Manager resolves this limitation so that you can enter the purchased licenses from a standalone Windows GUI application. You are no longer required to enter license keys during installation.

A significant benefit that resulted from the new licensing concept is the easy upgrading from trial to retail version. Previously, a prospect customer is required to download the trial version, then later the retail version after purchase. Starting from 2007 R2, we will ship only one version of product package. This new package will default to trial version on first installation. Later after you purchased a license, you simply launch the License Manager application and enter the new license key through the GUI. Upon successful validation, the trial mode will be unlocked automatically. This enables you to work with development effortlessly and uninterrupted, while dramatically boosting productivity and efficiency.

See Also

Other Resources
New Deployment Manager
{New SmartWebResources�?� Framework}


All-new vista-style user interface for Windows GUI application

All-new vista-style user interface for Windows GUI application
Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2 > New Features in 2007 R2 > All-new vista-style user interface for Windows GUI application

Glossary Item Box

All Windows GUI applications are now having consistent, all-new look and feel that resembles rich Vista-kind style. All component editors, designers and wizards that derived from WebUI.NET Framework will get this fresh user interface automatically.

The new user interface resembles the new quality of 2007 platform which focused on user-friendly and rich interfaces that boost developer�??s productivity.

Applications that updated to use Vista-style UI are Update Manager 3.0, License Manager, Deployment Manager, and all component editors.


Benefits introduced in 2007 R2

Benefits introduced in 2007 R2
WebUI Framework > About WebUI Framework 2007 R2 > Benefits introduced in 2007 R2

Glossary Item Box

We highly recommend all our customers to migrate to 2007 R2 products to gain many benefits introduced in 2007 R2 platform. Some of the benefits are:

  • Deliver higher performance application through countless improvements and enhancements to core-level performance.
  • Deliver more scalable application through innovative FileServer feature.
  • Increase productivity and reduced efforts in administrative tasks through the new Deployment Manager.
  • Simpler and easier licensing through the new License Manager. This new licensing manager removes many issues and limitations during installation and un-installation.
  • Peace-of-mind and confident deployment. With the innovative SmartWebResources�?� technology, you can totally eliminate the needs to configure client scripts or client resources used by the control. You also no longer have to worry on client script versioning issues that usually introduced in traditional components.

See Also

Other Resources
{Backward Compatibility}


Backward Compatibility

Backward Compatibility
WebUI Framework > About WebUI Framework 2007 R2 > Backward Compatibility

Glossary Item Box

The new 2007 R2 Framework is fully compatible with older framework. Therefore, older products that run on previous version of WebUI.NET Framework can upgrade to 2007 R2 Framework without issues.

However, note that the 2007 R2 Framework is specifically designed for 2007 R1 platform products, such as WebGrid.NET Enterprise 5.0, WebCombo.NET 4.0 and so on. Although it can be used in older products, it is not recommended to use this new Framework in the older products. If you decided to use this new Framework in older products, please carefully test and QA your web application before you deploy it to production server.

When the new Framework is used in older products, some of the new runtime features available in 2007 R2 will not work. The new runtime features that are not supported while paired with older products are:

  • SmartWebResources.
  • FileServer option for ViewStateStorage.
However, other core-level optimizations such as the new OptimizedState�?� and view state items are applicable.

See Also

Other Resources
{Benefits introduced in 2007 R1}


FAQ and How-to Topics

FAQ and How-to Topics
Send comments on this topic.
WebUI Framework > About WebUI Framework 2007 R2 > FAQ and How-to Topics

Glossary Item Box

The following list of How-to and FAQ topics describes how to implement new cache-to-disk option and new SmartWebResources�?� Framework.

New Cache-To-Disk option for ViewStateStorage�?�

The topics in this category provide direct instructions on how to use and configure file server.

  • How-to: Use file server for an instance of control
  • How-to: Configure file server to use shared network drive

New SmartWebResources�?� Framework

The topics in this category provide direct instructions on how to get familiar with latest SmarWebResources�?� Framework.

  • How-to: Configure SmartWebResources in a web application
  • How-to: Modify SmartWebResource mode for application-wide configuration
  • How-to: Ensure SmartWebResources is working properly
  • FAQ: I have enabled SmartWebResources, but some of my images are missing. What happened?


About WebUI Framework V3.0

About WebUI Framework V3.0
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0

Glossary Item Box

This section contains everything about WebUI Framework 3.0.

In This Section

What's new in V3.0

What's new in V2.0

Introduction

Applications


What's new in V3.0

What's new in V3.0
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > What's new in V3.0

Glossary Item Box

Introduction

WebUI.NET Framework which introduced by Intersoft Solutions in past year has become one of the most fundamental changes in the way Intersoft�??s components was developed. The Framework provides significant benefits to components architecture in the areas of reusability, extensibility and scalability. With the true framework model, it enables better component design and functions by taking the advantage of object-oriented architectures in its maximum extent.

WebUI.NET Framework version 2.0 includes many new features and enhancements to the initial version, such as the IEMozBridge�?� technology which enabling Intersoft�??s components to run on Gecko-based browsers using the same set of codes used in Internet Explorer browsers. Other noteworthy features are enhanced client side framework, view state storage, reinvented OnTheFly-Postback�?� technology and more.

For more information about new features and enhancements made to version 2.0, see What�??s new in WebUI.NET Framework version 2.0

What�??s new in WebUI.NET Framework version 3.0

WebUI.NET Framework version 3.0 extends the WebUI.NET Framework version 2.0 with new optimization architectures, significant improvements to performance, and enhancements to existing features. This section provides information on some key features and enhancements.

.NET Framework 2.0 Support

WebUI.NET Framework version 3.0 is natively compiled on .NET Framework 2.0 runtime libraries, providing significant improvements on stability and reliability when running Intersoft�??s components in ASP.NET 2.0 environment.

WebUI.NET Framework version 3.0 is the foundation of the next generation Intersoft�??s user interface components, providing rich design time support and new designer experience targeting Visual Studio 2005.

Performance improvement

WebUI.NET Framework Version 3.0 primarily focused on the performance improvement of serialization technology introduced in Version 1.0 by extending the features available in .NET Framework 2.0. A benchmark performance profiler shows performance improvement of up to 4 times faster when loading a large number of controls in a webform. The significant performance improvement did not sacrifice any of the intended serialization functionalities.

The serialization technology consists of:

  • Xml Serialization

This is core architecture of Intersoft�??s components which used as primary backend for client storage, and used whenever an object needs to be traveled between protocols.

  • Binary Serialization

This architecture enables automation of all Intersoft�??s components by providing common object serialization functionalities into binary format. The automation significant reduced bugs or defects found in a typical component, which at the end improves stability and reliability of Intersoft�??s products.

For more information about Serialization, see Advanced Serialization.

Centralized Style Output

With WebUI.NET Framework version 3.0, any instances of Intersoft�??s components will start to produce the automatically-generated style in a central location. This new feature introduced three key benefits:

  • HTML standard conformance

In the W3C�??s HTML standard specification, style tags should be placed under the <head> tag. In XHTML Strict mode, style tags are required to be placed under <head> tag in order for the styles to be rendered properly.

  • Browser�??s style tag limitations

Internet Explorer 5.0+ has a limitation of maximum 32 styles in a page. That means your controls will start losing its style when it exceeds 32 instances.

  • Cleaner page output

Delivering compact and clean output is one of the objectives in Intersoft�??s components design. With this feature, all styles produced by any instances of Intersoft�??s controls are no longer rendered inside the document�??s area. Instead, they will be rendered in a central location under <head> tag, producing cleaner output for your webforms.

This new feature can be enabled automatically by adding runat=�?�server�?� attribute in the <head> tag, which is added by default in new WebForm template of Visual Studio 2005.

Xml Compression

WebUI.NET Framework extensively utilizes XML as its main storage for client side settings. There are many advantages by using XML compared to traditional approaches which writes unstructured Array or lot of scripts for client side settings.

Xml Compression is a new optimization architecture providing compression and decompression algorithm in order to compress the XML storage into 40-60% smaller size. This significantly improves the performance of page load in narrow bandwidth. This technology is also extensively used in FlyPostBack technology to reduce the posted string and overall improvement of response time to 40%.

Cascading Style Sheet Optimizer

CSS Optimizer is a new core optimization technology for optimizing the output of Intersoft�??s component to produce smaller style output size. This optimizing technology solves many scalability and performance issues found in today's web application.

CSS Optimizer enables all Intersoft's components to use abbreviated class name (optimizing up to 70%). For instance, an automatically generated Style currently produces its name as "WebGrid1-LayoutSettings-FrameStyle�?�. With CSS Optimizer enabled, it can be optimized to "W2703".

The CSS optimization can be applied automatically without code changes to any members of WebUI Studio.NET family.

CSS Optimizer technology features tight integration with other architectures listed in the following:

  • Theme Architecture
  • WebUI Style Manager
  • Layout Manager
  • Style Preview

Structure Manager

Structure Manager works in the conjunction with GenericPersistence technology which enables you to load or save the structure of a component programmatically at runtime.

With this architecture, you can have external configuration saved in either database or xml-format file to be loaded dynamically at runtime instead of hard-coding the items in designtime. The external configuration concept allows you to build more flexible and extensible applications which require less changes to User Interface or application's codes in the future.

The Structure Manager introduced four key benefits listed in the following:

  • Provides greater scalability and extensibility architecture for your applications.
  • Offers better personalization options for end users.
  • Increased developer's productivity through reusable xml-based structures.
  • Faster implement with reduced learning time through consistent API and function in entire component suites.

Enhancements to existing features

In addition to the key features described above, there are also numerous enhancements made to existing features in the WebUI.NET Framework such as:

  • Client side object framework

More libraries have been added to client side object framework enables you to access objects and its hierarchy in the same way as in server side object model.

  • Theme architecture

Enhanced theme architecture now allows you to define theme information of a web application project in a separate configuration file. New behaviors and functions have also been added to cover more possibilities and scenarios while managing the application-level themes.

  • Script Manager

Core script manager have been updated to take advantage of new libraries available in NET Framework 2.0 to deliver predictable results.

  • FlyPostBack�?� architecture

Improved FlyPostBack architecture is now fully compatible with ASP.NET version 2.0. It is important to note that no effort was required to consume FlyPostBack actions in your webforms. Previously, you are required to turn off EnableEventValidation property.

Conclusion

WebUI.NET Framework is constantly improved to deliver better stability, richer functions and faster performance. Serving as the foundation of Intersoft�??s components, WebUI.NET Framework plays an important role to provide robust, high performance and rock-solid architectures for scalable enterprise web applications that incorporate Intersoft�??s components.

In this third generation, WebUI.NET Framework is primarily focused on performance improvements and new optimization architectures required for scalable and extensible web applications. WebUI.NET Framework version 3.0 has also undergone major re-engineering to meet the codes quality standard defined in Microsoft�??s Agile Framework, which at the end improves the reusability and reliability of web applications running on ASP.NET version 2.0.


What's new in V2.0

What's new in V2.0
WebUI Framework > About WebUI Framework V3.0 > What's new in V2.0

Glossary Item Box

As the base of all Intersoft's components, the WebUI.NET�?� Framework constantly improved, enhanced as well as addition of base features to create rock solid, powerful and extensible high-end components. This major release V2.0 contains significant improvements such as greater stability and faster performance, more interfaces and base class libraries to provide rich functions for the derived components.

WebUI.NET�?� Framework V2.0 is also remarked for its extensive Gecko-based browsers support - as part of Intersoft's strategy - introducing IEMozBridge�?� architecture for rich scripting as well as Gecko's CSS rendering.

Following is the detailed list of enhanced and new features added in V2.0:
  • OnTheFly-PostBack�?� architecture reinvented.

The architecture used extensively by Intersoft's components to empower smooth, fast and rich client interaction with server resources. The architecture is now reinvented for even more stable and smoother interaction, and is now built as integral part of the WebUI.NET Framework. The result of the integration is the same server interfaces and same clients core architecture used by any number of products utilizing the feature. Learn more about OnTheFly-PostBack�?� architecture and its concept.

  • New core interfaces.

The Framework V2.0 has been much improved and equipped with core interfaces such as IAutoDataCache for standarized automatic data caching functionality across derived components, base classes for collection and Intersoft's named objects, base data binding functionalities and core interface for standarized rendering process used by OnTheFly-PostBack architecture.

  • Enhanced client side framework.

One of the key strength of Intersoft's products family is its rock-solid and consistent client side object model throughout all WebUI Studio.NET members. In V2.0, significant enhancements has been put to make the client side programming as similar as in server side. That means you can write javascript codes in the same manner you write C# codes. For example, you used this code to obtain an item from collection in C#:

WebGridColumn col = Grid1.RootTable.Columns.GetNamedItem("CustomerID");

Now, you can also use the same way in javascript codes when you need richer interaction at client side:

var col = Grid1.RootTable.Columns.GetNamedItem("CustomerID");

Much efforts have been put to reinvent the architecture of the client side recognizing the key to rich interaction lies in the client side environment. Other significant enhancements includes "server side"-alike object hierarchy structure, native xml support and extensive Gecko-engine support.

  • Enhanced ViewStateStorage.

Instead of disabling ViewState by setting EnableViewState property to False, you can now safely turn off server-side viewstate caching while enabling the normal viewstate to work properly. A new value "None" has been added to the ViewStateStorage enumeration, enables you to easily disable the server side viewstate caching. Learn more about ViewStateStorage feature.

  • Enhanced LayoutManager.

Layout Manager enables you to design the styles and change the appearance of Intersoft's components and let you easily save the layout for further use in another instances or projects. The "design once, reuse everywhere" concept has been now much enhanced with the addition of OnTheFly-Preview�?� preview enabling you to preview the results of your design without has to save or recompile your project. In V2.0, the Preview feature has been optimized for faster performance and greater reliability.

  • Enhanced XmlSerialization.

XmlSerialization is now faster than ever in V2.0. It has been optimized and enhanced to be able to perfectly serialize and deserialize any collection objects, complex objects as well as nested complex objects. More attributes-based controller has also been added for greater control over the serialize or deserialize behavior of an object.

  • Enhanced ScriptManager.

Intersoft's Framework and its derived web components used its own script manager in order to render the shared scripts between all components as well as product-specific scripts. In V2.0, the script manager is now capable to deliver scripts in the same order as defined in collection. That means a 100% reliable scripts output for reliable, rock solid web applications, less errors and therefore increasing productivity.

  • Enhanced Update Manager application.

Update Manager enables any products that built on the top of the Framework to enjoy automated updates whenever a new Update or Hotfix released. The "one-click update" concept has now been optimized and further enhanced to allow proxy authentication as well as non US regional support.

  • Gecko-engine supports, specifically as following:
    • OnTheFly-PostBack�?� architecture.
    • New IEMozBridge�?� architecture.
    • Native XML and XSLT.
    • CSS rendering.
    • Theme architecture.

With extensive Gecko-engine supports, clientside script files are no longer stored as encoded javascript (JSE extension) which is exclusive to Internet Explorer. The main benefit in administrative side is the JSE mime type configuration no longer required for IIS 6.0.

Components that built on the top of WebUI.NET Framework V2.0 will automatically support following browsers:

  • Microsoft Internet Explorer V5.5 SP2 for Windows.
  • Microsoft Internet Explorer V6+ for Windows.
  • Mozilla V1.7 +for Windows/Mac/Linux/Solaris.
  • Firefox V1.0+ for Windows/Mac/Linux/Solaris.
  • Netscape V7.0+ for Windows/Mac/Linux/Solaris.
  • Camino 0.7+ for Mac.

The combination of powerful server side architecture, rich client side framework, wide cross-platforms and extensive cross-browsers support is the key to successful web application development and wealth experience for end users, which resulting in faster time to market, reduced TCO and increased profits.

The V2.0 release of WebUI.NET Framework is a major version release and can't be updated using Update Manager. Any major release of Framework should be cleanly installed from the Setup package. Please uninstall any previous version of the Framework prior to installing the new major version.

See Also

Feature
{OnTheFly-Postback�?� architecture}
{IEMozBridge�?� architecture}


Introduction

Introduction
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction

Glossary Item Box

This section contains introduction about WebUI Framework V3.0.

In This Section

Overview

Benefits

Frequently Asked Questions

System Requirements

Installation

Framework Features

Deployment

Licensing


Overview

Overview
WebUI Framework > About WebUI Framework V3.0 > Introduction > Overview

Glossary Item Box

Components At A Glance

With the advent of Microsoft .NET Framework and its entire technology since the past 4 years, the utilization of Component-based applications have been growing very fast in software industry today. The component design model introduced many advantages and benefits such as highly reusable and customizable where developers can easily build high productive applications in less time as well as increasing the value of the applications in many ways. Thanks to .NET technology and ASP.NET architecture specifically, the component design model is now invented and available in web-based development environment where it was only available in desktop-based Windows application. With this availability, many vendors have migrated and invested tremendous resources in making components that work in ASP.NET web development and Visual Studio.NET in particular which aims to increase both developers and end users productivity.

Today we can find hundreds of components for ASP.NET web development that are working individually with different methodology and concept between each and another. Even the same vendor that develop more than a dozen of components oftenly have different object model, different methodology, and different way to perform tasks in each components. This has become a major issue for developers today where they have to spend more time to learn the functionality and structure between one component and another due to the inconsistent in the standard of development. This has not including the component upgrade issues and other maintainance problems which mostly introduce higher workload. This certainly will result in longer learning curve and therefore lowering the productivity of developers.

Intersoft Solutions Corp. as one of the leading component vendor is proud to introduce its latest innovation in component software: a true, rock-solid framework-based component object model that designed to completely overcome today's components obstacles. More than that, the framework introduced many advantages and benefits which is not possible before with its rich features, powerful architecture and extensible functionalities.

Introducing WebUI.NET Framework

Intersoft's new component framework, named Intersoft WebUI.NET Framework is designed with 3 natures and behaviors as its main attributes -- which you can find in all products that derived from the framework -- that are: Rich, Powerful and Extensible. As the result of extensive, time-consuming research and development, WebUI.NET Framework fully takes advantage of advanced Microsoft.NET technologies resulting in a true powerful and high performance framework component model. Several key challenges and major issues that prevent many component vendors to invent such framework has also been completely resolved and fully taken care at core WebUI.NET Framework. This enables developers to concentrate on their core business requirements and added applications values, without has to pay attention and wasting time in development issues such as the need to use upgrade utility for upgrading components, or manually setting some configurations repetitively in order to make the components work. Rest assured that these low-level core stuff will be handled completely with the availability of WebUI.NET Framework.

Intersoft WebUI Studio.NET is a unique and truly integrated component framework provides rich class libraries and powerful interfaces as well as consistent object model for all Intersoft�??s ASP.NET Web Components. WebUI Studio.NET is the new version of framework replacing WebCommonControl architecture introduced in its first two products, WebCombo.NET and WebGrid.NET Enterprise. The new framework provides as the base component for all upcoming Intersoft�??s products enables sophisticated, new level of components�?? integration which is never possible before.

WebUI.NET Framework Diagram

Intersoft WebUI.NET Framework Diagram

As seen in the diagram above, Intersoft creates a new layer for the framework between ASP.NET Architecture and the developed web applications. The framework have tight interoperability with Microsoft .NET and the ASP.NET architecture in order to produce high performance and rock-solid base for the entire layer of high end components such as WebGrid.NET, WebInput.NET and future coming products.

At the time of this writing, only WebInput.NET is available as WebUI Studio.NET member which extensively taking advantage of WebUI.NET Framework. Please click this link to see Intersoft's product roadmap and upcoming products.

Intersoft WebUI Studio.NET Family

The top level components or products that derived from WebUI.NET Framework will synergy a Component Family named WebUI Studio.NET. This family methodology is different with Component Suite. The biggest difference is traditional Component Suite oftenly a collection of individual components which doesn't know the existence of each other, doesn't have integration or capability to use each other features consistently, while WebUI Studio.NET Family is a collection of components that derive from the same base and well-integrated between each and another. For example, one component can call another's feature or functionality consistently through the same interface and object model.

The Family methodology is obviously more than corporate's branding or marketing's identity which mostly used by vendors to strengthen their product position while actually there are no infrastructure or architecture that fully support the understanding of the concept. Intersoft invented the Family model to enable developers to quickly recognize the quality products which have met the high requirements and specifications, as well as redefine the standard of components that expose the nature behaviors of Rich, Powerful and Extensible. Rest assured that when developers found a component that has this Family label, they will find the same familiarity of the products they have used for years, the same way to achieve similar tasks and well integration into existing products.

About WebUI.NET Framework Logo and Philosophy

WebUI.NET Framework Logo

WebUI.NET Framework is major Intersoft's initiative in providing rock-solid, powerful and innovative base libraries for all high-end Intersoft components with two key goals: increasing developers productivity and enabling a greater user's experience while working in web application environment. Intersoft has designed a logo as seen in the left to allow end developers to quickly recognize the identity of WebUI.NET Framework.

The logo was designed to maximally expose the visibility and attributes of high-end components that derived from the framework, those are Rich, Powerful and Extensible.

The logo shows essential philosophy of the framework as an Integrated Framework with consistency, reusable, atomic, standardized, extensible, and strong objects oriented behaviors. As an integrated framework, it supplies everything to develop (for component developers) and to customize (by end developers) Web User Interface component on .NET technology, and it has an extensive library for designtime (fully integrated with IDE), runtime, and deployment time. For component developers, they will have a very strong foundation to develop new rich WebUI component that is easy to use, easy to develop, easy to deploy, easy to maintain, easy to extend and a very reliable framework (shorter development time with standardized and rich features , high productivity). For end developers, they will have a component (suite) that is easy to understand, easy to use, easy to deploy, a very reliable component since it based on a integrated framework, and certainly rich user experience (shorter learning time with high productivity, usability and reliability).

See Also

Getting Started
{Benefits}
{Frequently Asked Questions}


Benefits

Benefits
WebUI Framework > About WebUI Framework V3.0 > Introduction > Benefits

Glossary Item Box

Fully taking advantage of advanced Microsoft .NET Technology, WebUI.NET Framework is designed to be a pure component framework model which certainly expose many benefits to both developers and end users. Following is top 5 benefits of WebUI.NET Framework:

  • Consistent Object Model and Interfaces

Every components derived from the framework will expose the same set of core features and functionalities including properties, methods, events, as well as extensible and powerful interfaces. This consistent object model enables developers to be familiar and quickly learn and adopt new/other Intersoft's components once he used to work with one component. For example, the framework implements ICopyable, IResetable, ICloneable etc. These methods are consistent and automatically available to all objects and classes which derived from the framework.

  • Rich Features

The framework consists of rich core features such as ViewStateStorage to allow developers to easily select the storage for ViewState, DynamicStyle for client's style interactivity, ClientSide Object Framework provides as the base class for all derived components, XmlSerialization, one of Intersoft's key innovation enables advanced, selective and automatic object serialization as well as deserialization, Layout Manager, Designer Features and much more. All of these features are exposed to derived components automatically, without any additional works.

  • Great Extensibility

The true framework model enables superior level of extensibility to all derived components. Alteration to the features as well as new core feature addition can be easily made in framework level. The updated and new features will then be automatically applied to all derived components with no extra works or even recompilation at component level. This great extensibility results in better consistency object model between one and another component when new features arrived, which finally increases developers' productivity and decrease learning curves.

  • Sophisticated Integration

A new level of integration can only be achieved with true framework model implemented by WebUI Studio.NET. The tight integration between one and another component is now possible, enabling one component to use other component's feature seamlessly as well as enabling better interoperability between multiple components. The integration at components level spans from design-time to runtime functionalities. For example, ContextMenu feature is exposed to all derived controls. This feature can automatically be integrated and consumed by any Intersoft's components when WebMenu.NET installed.

  • Seamless Upgrade

Intersoft's unique component framework model enables seamless updating when the new version of the framework arrived. Existing web projects that consume components deriving from the framework will automatically take advantage of the features introduced in new version of the framework without the need to recompile the web projects. The seamless upgrading process is major key feature of Intersoft's component to increase developers' productivity by letting them focus on business applications requirements and let Intersoft's components does it all.

See Also

Getting Started
{Overview}
{Frequently Asked Questions}


Frequently Asked Questions

Frequently Asked Questions
WebUI Framework > About WebUI Framework V3.0 > Introduction > Frequently Asked Questions

Glossary Item Box

  • What is WebUI.NET Framework?

    WebUI.NET Framework is a framework-model component design developed by Intersoft Solutions to enable consistent object model, rich features and extensible functions. The primary goals are to increase developers productivity and dramatically increasing end user's experience. To learn more about WebUI.NET Framework, please click the Overview link in the See Also section.
  • How can I know whether WebUI.NET Framework has been installed in my computer?

The easiest way is by looking at the All Programs in the Start Menu and search for Intersoft WebUI Studio.NET group. The Framework should have been properly installed when you can see the group.

  • How can I check the version of currently installed WebUI.NET Framework?

The easiest way to check the framework version is by opening the About Dialog box available in any WebUI Studio.NET components. Below is the example screenshot of the About Dialog box. You can also see the list of installed WebUI Studio.NET members.

About Box

  • What is the best way to update WebUI.NET Framework?

Intersoft has developed an intelligent Update Manager as the companion to the framework, enabling convenience, centralized user interface for smoother and seamless updating process for the Framework itself as well as installed WebUI Studio.NET members. With this Update Manager application, Intersoft do not recommend you to go through painful complete Uninstall and Reinstall process. To learn more about Update Manager, please click the Update Manager Overview link in the See Also section below.

  • Where can I get the latest installer for WebUI.NET Framework?

Please visit WebUI.NET Framework page on Intersoft's website at http://www.intersoftpt.com/WebUINET

See Also

Getting Started
{Overview}
Benefits

Update Manager
Overview


System Requirements

System Requirements
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > System Requirements

Glossary Item Box

WebUI.NET Framework requires following software/components to be installed for development purpose.

  • Microsoft Windows 2000/2003 Server family.
  • Microsoft Windows XP Professional or Home Edition.
  • Internet Information Services or Personal Web Server.
  • Microsoft .NET Framework v1.0 or higher.
  • Microsoft Visual Studio .NET v 7.0.9466 or higher.
  • Microsoft Web Matrix.
  • Borland Delphi/C# Builder.


Installation

Installation
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Installation

Glossary Item Box

This section contains information about installing WebUI Framework V3.0.

In This Section

Distribution

Installation Wizard


Distribution

Distribution
WebUI Framework > About WebUI Framework V3.0 > Introduction > Installation > Distribution

Glossary Item Box

Intersoft WebUI.NET Framework can be distributed in 2 ways:

  1. Included in the component package.
    The framework can be found within the product's package and usually there are no needs to install the Framework manually. In this method, the product's Installer will check the existence of the Framework and automatically install it if it has not been installed yet. See sample screenshot below:

  2. Downloaded separately.
    The framework can also be downloaded and installed separately. Please see the F.A.Q. link below to get the download link information.
    One of Intersoft's objective with the framework concept is the framework should only need to be installed once and future products will not need to ship the Framework along with the package assuming you've installed the framework. However, the installer will still check for the existence and provide you a one-click convenience to download the framework without interrupting the Installer. You can then install the Framework after downloaded it, and click Next to continue the installation of the product. See the screenshot below:

See Also

Getting Started
{Frequently Asked Questions}

Reference
{Installation Wizard}


Installation Wizard

Installation Wizard
WebUI Framework > About WebUI Framework V3.0 > Introduction > Installation > Installation Wizard

Glossary Item Box

The Installation Wizard for WebUI.NET Framework consists of 3 user interactions which can be seen in following:

  1. Startup
    You will see the screenshot below the first time you run the setup or when the product Installer automatically launch it.

  2. Destination Folder
    In this user interface, you are asked for the Destination Folder where the Framework files will be installed. This user interface is essential because you have to carefully decide the base folder where all WebUI Studio.NET components will be installed. They should be under the same folder for integration reason as well as Centralized Client Files feature introduced since the initial release of Intersoft's components. Please click the link in See Also section below to learn more about Centralized Client Files.

    Once you decided the Destination Folder for the Framework, you can rest assured that further products Installer will use the same Destination Folder. Intersoft's Product Installer has the capability to detect the installation folder of the Framework and therefore you don't have to worry or keep remembering where you install the Framework.

  3. Start Installation
    Finally, click the Install button to have the Installer automatically copying and registering necessary files and assemblies. It will also automatically create IIS Virtual Directory for Centralized Client Files.

If you have pre-Framework products installed such as WebCombo.NET V2 or WebGrid.NET V3.5, it is highly recommended that you install the Framework in the same folder as previous installation. By default, it should be [Program Files]\Intersoft Solutions. The Framework and WebUI Studio.NET members will not conflict with pre-Framework products, so it is safe to install them together under the same folder.

See Also

Feature
{Centralized Client Files}


Framework Feature

Framework Feature
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Feature

Glossary Item Box

This section contains features in WebUI Framework V3.0.

In This Section

OnTheFly-PostBack architecture

IEMozBridge architecture

Rich Object Model

Advanced Serialization

Client Side Object Framework

Client Event Designer

Layout Manager

ViewState Storage

Dynamic Style

Theme Architecture

Centralized Client Files

Powerful Base Class Libraries


OnTheFly-PostBack architecture

OnTheFly-PostBack architecture
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > OnTheFly-PostBack architecture

Glossary Item Box

What is OnTheFly-PostBack�?�?

If you are a web developer, you should already familiar with server postback mechanism where the entire page is submitted back to server for processing and then returned the complete output back to client side. In ASP.NET, a server control requires a postback to server in order to process the information and events passed from the client. While ASP.NET has greatly improved the architecture of server-based processing such as server controls and control events, it still unable to deliver the web experiences expected by both developers and end users since it had to perform standard page postback mechanism which is undoubtly causing inconvenience and producing slow interaction between user interactions.

OnTheFly postback is patented technology by Intersoft Corp. which eliminates the need to perform full page postback in order to communicate with server resources. The technology is built on the top of ASP.NET® and latest web technology, therefore allowing our commercial server components to better run on .NET-enabled server and to take advantage of the technology in order to produce a better web experience - as stated in Intersoft's vision.

Benefits

There are many benefits when data can be requested and delivered by clients without losing the state of the client. The most significant benefits is improved overall performance and minimized server's workload.

Normally, a standard server control will need to do postback to server in order to interact with server's resources such as retrieving data or do server-specific tasks. Since that the web applications is stateless, there is a need to save latest client state for the whole page when posting back to server. This is done by the VIEWSTATE implementation in Microsoft ASP.NET. There is nothing wrong with the ViewState implementation and in fact it does very well. However, a major performance issue will appear when there are a lot of complex controls in a page, which is caused by large saved view state and the need to send back the whole page's output.

The OnTheFly postback feature allows the implemented controls to interact with server and sends back only necessary UI elements, without the need to send the whole page's elements. This dramatically saves the server's resources, time and bandwidth needed to perform server interaction.

The summary of the benefits are:

  • Rich and smoother user interactions.
  • Improved performance up to 50%.
  • Minimized server workload.
  • Increased end users productivity.
  • True server-events processing.
  • Faster rendering and realtime response.

About Callbacks

Callbacks is the generic term used by other vendors to identify the postback through XMLHTTP channel over traditional postback. Many developers have asked the difference about the callback with Intersoft's proprietary OnTheFly-Postback�?� architecture. So, are there any difference? The answer is yes.

Although more vendors will claim that their products support callbacks, still many of them failed in state persistence as well as tons of issues related to ASP.NET conformance and page life cycle. Intersoft's OnTheFly-Postback�?� is not a few line of javascript codes sending request to server through XmlHttp (as of Callbacks), it is a truly integrated client-server architecture with comprehensive server component interfaces for cross-products consistency and reliability resulting in smooth UI interactions.

Following is the details that make Intersoft's OnTheFly-Postback unique and strongly stand out of the crowd:

Conformance to Microsoft .NET's Page framework.
There are certainly a few issues that appear with the introduced onthefly-postback feature, such as the state of IsPostBack, the viewstate restoration and so on. Intersoft recognizes that without the compatibility of .NET's page framework, it is unlikely that the architecture will become a solid, mature, and enterprise-ready architecture. Therefore, the architecture has been designed with full support and conformance to the .NET's standard page framework.

The implemented supports are:

IsPostBack state. When controls that implement the architecture initiates a data request or server's interaction, the Page.IsPostBack of the requested page will be set to True. By comfort to this standard, all existing codes that implemented in !IsPostBack condition will run properly without additional codes changing.

ViewState restoration. It is important that when initiates onthefly data request or server's interaction in Page's code-behind, the last viewstate of other controls contained in the Page is restored. This is done transparently in WebCommonControl, while many other vendor's controls that offer similar function failed to comfort to the framework's standard.

Multiple instances. The architecture fully supports multiple instances of the control that implement it. That means server page's framework will be able to distinguish which controls that initiate the server request, and continues to process attached server event handler of the control.

Common data binding. The architecture allows you to bind data the same way you bind data to any common controls. This is totally unique and advanced feature recognizing that the controls are in fact working in onthefly postback which doesn't require the page to be refreshed. You can assign the DataSource of the control by specifying it in Page_Load or provided events based on the controls, and call DataBind().

IntersoftControl's postback state. It is a special class that contains the Postback state of the architecture. Keep in mind that the onthefly postback sets the Page.IsPostBack to True as well. It is very important that developers can determine whether the initated postback is a normal postback made by other controls or a postback initiated by Intersoft's controls. With the provided class, developers have the ability to fully customize, extend and develops high performance and productive web applications.

Server events. The architecture will invoke server events just like in traditional postbacks. Page's lifecycle events will fired as usual followed with control-specific events that implement the architecture.

Intrinsic controls value. The architecture allows developers to decide whether other intrinsic controls' value to be passed back during OnTheFly postbacks. When the controls' value is submitted, developer can easily obtain the value in server side. For example, TextBox1.Text or Checkbox1.Checked.

ClientAction engine. The framework built-in ClientAction engine enables developers to easily call client-side action or codes in server side. For example, ClientAction.Alert("msg") or ClientAction.NavigateTo("page2.aspx") can be called directly in server side codes within OTFPB context.

Inline script tag supports. By default other callbacks will fail when inline script tag is used in the aspx page. For example, <%= DoSomeFunc() %> will cause issue during page response. Intersoft's OnTheFly-Postback has been designed to support inline script tag supports as well as inline databinding, inline templates and more. Over dozens of advanced scenarios, integration within other framework, SSL context, as well as in load-balanced enterprise environment has been fully tested and verified to work flawlessly.

About ASP.NET V2.0 Support

At the time of this writing, Microsoft has planned to support what they called "out-of-band callbacks" directly into the ASP.NET V2.0 architecture.

Intersoft's OnTheFly postback architecture has been redesigned and further optimized when built into the WebUI.NET Framework. The architecture has been made "plugable" and thus it could be easily integrated into ASP.NET V2.0's interface once it is available.

However, Intersoft might not be utilizing ASP.NET 2.0's built-in callbacks support due to many of limitation in the .NET Framework itself.

About Mozilla support

Internet Explorer® users have been enjoying the benefits of this architecture since its initial release. Intersoft is proud to announce that the architecture has been redesigned to support Mozilla-based browsers as well. That means, Intersoft has now open the chance for other platforms such as Macintosh, Linux or Solaris to enjoy the rich features of Intersoft's products, delivering wealth user experience and greater productivity to both developer and end users.

The Mozilla and other Gecko-engine based browsers support is implemented in WebUI.NET Framework V2.0.


IEMozBridge architecture

IEMozBridge architecture
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > IEMozBridge architecture

Glossary Item Box

Introduction

Having success in delivering a better web experience specifically in Internet Explorer and Windows marketplace, Intersoft has included the plan to support other feasible-to-be-supported browsers in the 2004's product roadmap. After months of researching, it comes to decision that only Gecko-engine browsers are feasible to be supported at the release time of WebUI.NET Framework V2.0.

Although Gecko-engine browsers such as Mozilla and Firefox already has strong architecture in DHTML, CSS support and scripting, many of the API and DOM are different than those used in Intersoft's products. It is almost impossible to have extremely rich products consuming many IE's proprietary feature to work smoothly in Mozilla or other browsers, unless a truly complete architecture for "bridging" the gap between Internet Explorer and Mozilla can be revealed.

Write Once, Browse Anywhere

For that purpose, IEMozBridge�?� architecture was born. IEMozBridge was developed from the ground up with one main objective: "Write Once, Browse Anywhere". With this architecture, the same codebase can be reused for both Internet Explorer browsers and Gecko-engine browsers such as Mozilla, Firefox and Netscape, such as you can see in the following diagram.

Benefits

The IEMozBridge architecture is not only benefitting Intersoft as the powerful components provider, it also provides many benefits in both administrative side and developers tasks.

Compared to traditional approach by making one set of library for IE and another set for Mozilla, the IEMozBridge architecture benefits as in following:

  • Less maintenance overhead during deployment and updating. Instead of copying or updating two sets of source, both administrators and developers only need to check and update for one same source.
  • Ensure 100% synchronized feature and object model. When a new property or feature is added to the product, rest assured that it can be accessed in utilized in both IE and Gecko-browsers.
  • Increased developers productivity. Instead of spending time figuring out possibly different object models between both browsers, developers can now focus on the added value of their business web applications and let the IEMozBridge do the core operations.


Rich Object Model

Rich Object Model
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > Rich Object Model

Glossary Item Box

WebUI.NET Framework consists of rich class libraries, interfaces and common methods that are accessible to all high-end components that derive from it.

Every derived components will automatically implements following interfaces when they derive from the framework:

  • IXmlSerialize
  • IObjectState
  • ICloneable
  • IResetable
  • ICopyable
  • ISerializable
  • IBinarySerialize
  • IPostBackDataHandler
  • IInfo
  • ILayoutSettings

The end result is a truly consistent object model among all derived components (named WebUI Studio.NET family), which have these public methods exposed automatically:

  • Copy
  • CopyFrom
  • Clone
  • Reset
  • Serialize
  • GetObjectData
  • OnInfoChanged
  • LoadLayout
  • LoadLayoutFromFile
  • LoadLayoutFromStream
  • SaveLayout
  • SaveLayoutToFile
  • SaveLayoutToStream

There are more methods, events, attributes and properties that are automatically exposed which are not listed here. They will be discussed in more details in each feature.

Every object that exposed in a high-end component automatically implements following interfaces:

  • ICloneable
  • ICopyable
  • IResetable
  • IBinarySerialize
  • ISerializable

With the rich object model, developers have granular control over each object and has the ability to manipulate objects easily, such as copying from one instance to another, cloning and so on. The consistency of the object model marks a new leap in component industry where developers have more confidence in long-term investment of Intersoft's components.


Advanced Serialization

Advanced Serialization
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > Advanced Serialization

Glossary Item Box

WebUI.NET Framework includes extensive implementation of advanced serialization as well as deserialization. The primary objectives of these advanced serialization is to enable consistent, high performance with more precise control over object persistence and manipulation.

There are two major implementation of serialization in WebUI.NET Framework:

  • XML Serialization
    Object that has XmlSerializable attribute will be automatically taken into account when serialization process is called in internal functions. One of the most utilization of XML Serialization is the automatic rendering process of control's client xml data. It is also extensively used in layout persisting and restoration.
  • Binary Serialization
    Binary Serialization is provided for more compact output where the results are oftenly stored in server side. It is mostly used to serialize object to be stored as cache.
Every public objects that exposed in a component will automatically support XML and Binary serialization/deserialization.

With the ability to serialize and deserialize objects in both XML and Binary format, WebUI.NET Framework served as a rock-solid foundation for the derived high-end components, enabling every object to be remotely transferred from one medium to another such as in SOAP and Web Services as well as making it easy when complete persistence of object's state is required in either XML or Binary format.


Client Side Object Framework

Client Side Object Framework
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > Client Side Object Framework

Glossary Item Box

Introduction

One of the key strength in WebUI.NET Framework is the new Client Side Object Framework. The WebUI.NET Framework does not only contains server-side class libraries used in .NET Environment, it also invented tremendous libraries and resources in the client side for better OOP Structure and design consistency in high-end components that derive from the Framework.

The Client Side Object Framework (further called CSOF) fully takes advantage of JScript language to provide true inheritance object model to expose common properties and methods to all WebUI Studio.NET (further called WS.NET) components. The parallel consistency between client side and server side object model really introduced a new achievement and capability in increasing developer's productivity.

One of the biggest advantage that can be seen in CSOF is the engine-model libraries replacing traditional global functions which took more memory consumption and thus impacting client side performance. Although the engine classes are not intended to be used by developers directly, we have made all necessary functionalities to be accessible in the Object level and performing mapping to the engine libraries. The engine model also allow multiple version of libraries to be run simultaneously between different version of components, enabling long-term investment for mature, rock-solid high-end components.

Design Consistency

The result of the inheritance and many new features available in CSOF that we can see is the ability to access any WS.NET instances in client side with only one single function. In this purpose, Intersoft has taken the giant steps to really focusing on developer's productivity. For example, in common ASP.NET components, one has to remember the function name to access the object for each component. Imagine if you have about 10 components in a page where you need to access them in scripting, then you would have to remember 10 function names. This is no longer required by the introduction of CSOF. See following sample codes for better pictures:

Traditional Object Access:

var compA = xx_GetCompAById("compAID");

var compB = xx_GetCompBById("compBID");

CSOF Object Access:

var compA = ISGetObject("compAID");

var compB = ISGetObject("compBID");

You can access any WS.NET instances easily by using one single function ISGetObject. This will certainly result in greater productivity where developers can concentrate on their business logic, instead of spending time in inconsistency of each components they used.

Object Structure

Any WS.NET members should be automatically derive from the CSOF and therefore should meet the requirements and new standard in client object's structure. The CSOF requires the object's structure to be as similar as possible against the server side object model including the name of the properties and the hierarchy of public objects. This will in return producing self-understandable syntax and properties. You can consider the client side object structure as a mini-version of server side object.

See following example for details:

Server Side Object Model:

WebInput1.EditFormat.MaskInfo.MaskExpression

Client Side Object Model:

var input1 = ISGetObject("WebInput1");

alert(input1.EditFormat.MaskInfo.MaskExpression);

Notice that you can get the same property's value in client side by following the same object hierarchy and property name.

Events

Any WS.NET members are automatically taking advantage of the common client side events available in a W3C browser context. Following is the list of common client side events available in control-level implemented by any WS.NET members as a standard:

  • OnBlur
  • OnChange
  • OnClick
  • OnDblClick
  • OnFocus
  • OnKeyDown
  • OnKeyPress
  • OnKeyUp
  • OnMouseDown
  • OnMouseMove
  • OnMouseOut
  • OnMouseUp
  • OnSelect

Each client side event now expose at least 1 parameter, that is the controlId. The controlId is actually the ClientID of the server control, enabling the script to run properly when running in complex user control or portal-based environment.

In addition to the common client side events above, there are more client side events that are specifically exposed for each component's functionalities. For instance, WebInput.NET exposes OnAfterValidate for masking validation purpose.
The common client side events above are available at control level, the CSOF also introduces client side events specifically for element level such as following:
  • OnClick
  • OnDblClick
  • OnMouseDown
  • OnMouseMove
  • OnMouseOut
  • OnMouseOver
  • OnMouseUp

These client side events are specifically designed for element such as DropdownButton, CalculatorOperandEvents etc. These events also expose at least 1 parameter, the controlId as the standard.

WebUI.NET Framework also includes Client Event Designer to accompany the CSOF architecture in visual design time environment. To learn more about Client Event Designer, please click the link in the See Also section below.

Rich Libraries

In addition to the inheritance, integration, engine classes and events architecture introduced in CSOF, it also provides a rich client side libraries to be used by WS.NET members. There are several public objects that are implemented at CSOF and available to use by WS.NET members for both UI and scripting purpose such as following:

  • Dimension
  • Listener
  • WindowInfo
  • OffsetLocation
  • ClientEditor
  • Settings
  • CommonElementClientSideEvents
  • DynamicStyle
  • CultureInfo
  • CoreValidator

See Also

Feature
{Client Event Designer}


Client Event Designer

Client Event Designer
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > Client Event Designer

Glossary Item Box

WebUI.NET Framework not only provides mature architecture to serve as a foundation/base for derived high-end components, it also introduces tight integration into Microsoft Visual Studio.NET Integrated Development Environment with several Designer features.

The key objectives of the Designer support in design time environment is to enable faster tasks achievement with automation for reducing common errors such as typos or incorrect syntax. One of the most important Designer available in WebUI.NET Framework is the Client Event Designer, which enables developers to easily hook the event and write codes in javascript editing view. To achieve the best, richest user experience in web applications, it has been a standard requirements to write codes in JavaScript to enable high interactivity. Therefore, with the new Client Event Designer, it is expected that developers could write codes in less time by automating many repetitive tasks, such as writing <SCRIPT> tags, writing the functions body and furthermore, developers have to check what parameters are available from the Help File and manually write the available parameters. Overally, it could take a few minutes just to hook a client side event properly.

The Client Event Designer increases developers' productivity by automating the common tasks that usually required to hook an event directly in VS.NET Design time environment. The following guided you through step by step screenshot to take advantage of the Designer:

  • Select a client event to hook and notice there is a dropdown button in the right end of the property value.

  • Next, you can click on the dropdown button to list currently available JScript functions. If there are no functions available yet, you can only see "Add new handler..." item. Please click on the "Add new handler" item to hook the event right away.

    The client event designer will automatically suggest you the name of the event handler for better standardization in your codes. When the suggested name is already in use, it will automatically suggest you the name with different index. For instance, Webinput1_OnAfterValidate2 and so on.
  • As soon as you clicked the "Add New Handler" item, the new function name will be assigned into the property's value and you will be automatically taken into the HTML View with the cursor position ready in the function's body to let you write codes right away.

    The <SCRIPT> tag will be automatically created for you when there are no one existing yet. The function's body will also added into the last function of last <SCRIPT> tag. When the event has controlId parameter, it will automatically writes the code to access the object as you can see above. The return statement is also there to prevent issues where most developers always forget to write it as it is required.

Conclusion

The Client Event Designer was designed recognizing the needs of developers and after a few years of Intersoft's experience in web application development. It is expected to reduce errors and help developers to quickly achieve their business requirements in scripting. The Designer currently only support Visual Studio.NET design time environment. It has not been tested in WebMatrix or Borland's IDE.

Every WebUI Studio.NET members automatically have Client Event Designer enabled for the client side events properties. The WebUI.NET Framework have very tight integration between one feature and another to achieve this possibility.

See Also

Feature
{Client Side Object Framework}


Layout Manager

Layout Manager
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > Layout Manager

Glossary Item Box

Introduction

WebUI.NET Framework was developed with one key strength in mind: Rich. Intersoft's view of Rich behavior has two main scopes: Rich in Runtime Elements for end users and Rich in Design Elements for application developers. To achieve this Rich behavior, a component should have extremely customizable styles, look and feels and appearance. More than that, a Rich component should have the capability to let the developers design the styles and layout "visually", and manage them conveniently instead of requiring developers to "manually" write the CSS codes, manually move the files to properlocation etc. To overcome these issues, achieving Rich behavior and increasing developer's productivity, here born the new Layout Manager at Framework level.

The Layout Manager User Interface is available in Designer module of each WebUI Studiol.NET components. It is contained in a Tab with name Layout Manager and it seems similar to the one found in initial products such as WebCombo.NET or WebGrid.NET. However, the new Layout Manager exposes new enhancements such as integration in framework level and more.

Layout Manager User Interface

UI: Layout Manager

The treeview lists all available layouts and grouped it in 2 main nodes. Predefined Layout and Custom Layout. The number of predefined layouts shipped with each product are vary. However, Intersoft team will ensure that most common styles are always included such as WinXP Blue, Office 2003 and more. In addition to the Predefined Layout, you can also creates your own layout and they will appear under the Custom Layout node.

When you select a layout whether it is Predefined or Custom Layout, the preview of the layout will be automatically generated which you can see and interact directly.

If you have new layouts that you probably just download from Intersoft's Style Gallery, you can add the new layouts so that they appear under the Custom Layout node. Use the Add Layout button to add new layout from existing file.
Use Save Layout to save the currently selected WebInput.NET instance into layout file. The saved layout file will appear under Custom Layout node.
After you selected a predefined or custom layout, you can apply it to your currently selected instance by clicking Apply Layout.
Preview Current Layout used OnTheFly Preview technology implemented in framework-level to let you easily change the styles or other properties in Properties tab and preview it right away. No longer do you need to set each property, save, build and run it in browser that are very time consuming process, now you can use one single click to preview any changes modification.
Save Layout Options allow you to choose whether you want to save only the StyleSettings of current instance or whether you want to save both StyleSettings and any behavior properties. Behavior properties are configuration such as IsEnabled state of a feature or control's behavior such as MaskFormat, CharacterCasing and so on. Instance-specific properties will be automatically detected and will not be saved, such as ControlId, EnableViewState, DataSource, Enabled, Visible and other properties that are instance specific.
The preview area of current selected layout (when treeview is clicked) or current instance's layout (when Preview button is clicked). The OnTheFly Preview technology allow you to not only "preview" the style, but also allow you to interact with the control just as if you run it in browser. Most interactivity features such as onclick and popup window such as in the screenshot above are fully supported and therefore you can design your preferred styles much quicker and easier than ever. Only a few interactivity features that related to core function (no style and UI elements) are disabled, such as onkeydown and any keyboard events.

Style and Behavior

The Layout Manager has the ability to filter style and behavior. With this capability, developers have the flexibility to choose whether they want to save the layout file that contains style only or both style and behavior.

Some examples of the Style are properties those derived from WebStyle class or DynamicStyle class, such as FrameStyle, DropDownStyle and so on.

Behavior properties are those categorized for changing the behavior and the way the control worked. For example, AcceptEsc, CharacterCasing, Nullable and so on.

The Layout Manager has the capability to automatically strip out instance-related properties from Behavior as well as those marked as NonPersistable properties. Some example of instance-related properties are: Visible, Enabled, EnableViewState, ID, and so on.

ASP.NET 2.0 Compatible Skin Format

One of the difference with Layout Manager functionality found in initial products is the file format of the layout. The previous version saved the file in Binary Format and thus you can't manually change or manipulate the contents. The new Layout Manager now supports XML-based format which is consistent with the server side object model and hierarchy. This XML-based format is also used by Microsoft in their upcoming ASP.NET 2.0, which they named it Skin. Since that both Intersoft and Microsoft used the same XML format, the same layout for WS.NET components can be used forth-and-back in Intersoft's Layout Manager or ASP.NET 2.0 built-in Skin.

Intersoft has decided to use Layout Manager and the term "Layout" (not "Skin") recognizing the nature of the function which not only have the capability to save the Style, but the Behavior as well. The Skin concept is much more to style and appearance only.

OnTheFly Preview technology

User Interface and Design are two things that can't be separated to achieve Rich behavior for web application. Today there are hundreds of components which claim they have full customizable styles, yet they are required to code the style in manual writing (either server tag or CSS codes) and the result can only be seen after it is being compiled and launch it in browser. Intersoft has invented lot of efforts and resources in order to let single developer "develop and design" quickly with the easiness of one click convenience.

As you can see in the screenshot above, you can design the currently selected control's style in either Properties or Mode tab, then simply switch to Layout Manager tab and click Preview Current Layout button. You will see the rendered output in the Preview pane on-the-fly.

The OnTheFly Preview not only provides with you with the preview, but you can also interact directly with the component within the Preview pane. For instance in WebInput.NET context, you can click on the dropdown button to see the styles you just designed for the CalculatorEditor.


ViewState Storage

ViewState Storage
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > ViewState Storage

Glossary Item Box

Introduction

ViewState is the term introduced since ASP.NET v1.0 which is a placeholder to save the component's state into Page. The state will then be restored back to server side during postback. This is how every ASP.NET component should work. Developing Rich component has one main drawback that is the larger size of ViewState embedded into the rendered Page. This had caused critical issues in both performance and usability. We've seen many components are developed to have very rich features but yet skipping the ViewState management which in the end causing performance overhead where about 50K state per control need to be round-tripped during postback. Imagine if you have 10 controls which means there are 500K bandwidth resources wasted for the ViewState purpose.

Intersoft has invested tremendous effort and resources in researching and developing a new innovation where ViewState can be reduced by 80%. Here born the new ViewStateStorage feature.

Traditional Solution

Certainly there are many workaround suggested by Microsoft developers as well as community developers such as moving the entire ViewState to another storage such as Session. This can be done by overriding the LoadPageStateFromPersistenceMedium method and SavePageStateToPersistenceMedium method such as following:

protected override object LoadPageStateFromPersistenceMedium()

{

return Session["PageState"];

}

protected override void SavePageStateToPersistenceMedium(object viewState)

{

Session["PageState"] = viewState;

}

The sample above shows the basic way to save the entire page's state to Session and load it back. However, there are two major issues with this solution:

  1. Inefficiency. You have to put these codes in all your pages if you can't stand for custom Base Page which oftenly have limitation.
  2. State architecture. The code above saves the state to Session with name "PageState", of course this is not feasible since it will conflict with other page and requests. Again, you need to spend time to reinvent on the State architecture.

One Click Solution

WebUI.NET Framework introduces ViewStateStorage property which should be exposed automatically for any components that derive from it. The ViewStateStorage feature enables developers to change the storage of the ViewState with only one-click by changing its value in Property Editor.

There are currently 3 possible storages for ViewState:

  • PageCache. This is the default value for ViewStateStorage. The ViewState will be stored temporary in Page's Cache for 1 hour (customizable in PageCacheDuration). The cache is using sliding expiration.
  • Session. Each control's ViewState will be stored in Session. The state will remain valid until the user's session timed out. For scalability purpose, it is highly recommended to use this value and combine it with built-in ASP.NET SessionState's mode feature. The best approach is by using StateServer or SqlServer so that you can separate the main application server with the storage server in order to maintain the performance of main application server. Please refer to Microsoft's Web Architecture Best Practice for detailed information about SessionState.
  • Client. The traditional ASP.NET built-in implementation where ViewState will be embedded into the Page. This value is provided for backward compatibility with ASP.NET implementation in case developers prefer it.

You can configure the ViewStateStorage and the PageCacheDuration (for PageCache) globally by setting it in the Application-wide Configurations. Please click the link in the See Also section below for more information.

See Also

Deployment
{Application-wide Configurations}


Dynamic Style

Dynamic Style
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > Dynamic Style

Glossary Item Box

Web's Style At A Glance

ASP.NET v1.x introduced the capability to customize server side components through Style class exposed in many Appearance-category properties. It enables developers to change the style easily with predefined properties available in Style class. The properties include following:

  • BackColor
  • BorderColor
  • BorderStyle
  • BorderWidth
  • CssClass
  • Font
  • ForeColor
  • Height
  • Width

Improved WebStyle

WebUI.NET Framework introduced a more robust WebStyle class with more style properties and detailed configurations of border styles as well as improved behavior and mechanism over the built-in ASP.NET v1.x Style.

WebStyle consists of properties listed below:

  • BackColor
  • BackColor2
  • BackgroundImage
  • BaseStyle
  • BorderColor
  • BorderSettings
  • BorderStyle
  • BorderWidth
  • CssClass
  • Cursor
  • CustomRules
  • Font
  • ForeColor
  • GradientType
  • Height
  • HorizontalAlign
  • Margin
  • Overflow
  • OverflowX
  • OverflowY
  • Padding
  • VerticalAlign
  • Width

The improved WebStyle enables more precise control over the appearance, look & feel of the component and its entire UI elements.

Style Rendering

WebStyle has two types of rendering when used in components:

  • CSS syntax output.
    By default, every settings made to a WebStyle will be rendered as full CSS syntax during page request. The class name will automatically determined by the component's name, the style's hierarchy and the style's name.

    Example:
    .WebInput1-DateTimeEditor-HeaderStyle { background-color:LightSteelBlue; font-family:Arial; font-size:10pt; font-weight:bold; height:24px;overflow:Auto;overflow-x:Auto;overflow-y:Auto; }

    Each style will produce one CSS Class per instance of controls in a page.
  • External CssClass.
    The WebStyle has the flexibility to allow developers to use their own external CSS Class definition. Developers can define the CSS Class in either a page level scope by using <style> tag or external stylesheet link by using <link href="styles.css" ... >.

    To take advantage of External CssClass, you can simply enter the name of the desired CssClass, for instance: DTHeader in each style's CssClass property. During rendering, the WebStyle object will check for the CssClass property and automatically determine the output. In this context where CssClass exists, the CSS syntax for the specified WebStyle will not produced. Instead, the CssClass property will be assigned in the element's className attribute.

    In the scenarios where a lot of instances exist in a page, it is wise to use External CssClass for better performance and reduced output page's size.

DynamicStyle

One of the new stuff in WebUI.NET Framework is the new DynamicStyle class. The DynamicStyle provides a convenient and centralized way to bring interactive effect to the components and its entire UI elements.

DynamicStyle is built around the WebStyle object, and consist of 3 states of interactivity: Normal, Over and Active. See following screenshot for details:

States description:

  • Normal. The style applied to the element when the control is in normal state (doesn't has focus and not hovered)
  • Over. The style applied to the element when the control is being hovered (doesn't has focus)
  • Active. The style applied to the element when the control has focus. A control received focus when it is clicked, or tabbed using keyboard.
    The three states interactivity does not require any additional programming in either server or client side. It is handled automatically in Client Side Object Framework.

        Inheritable Base Style

        With the availability of DynamicStyle in WebUI.NET Framework, it also introduced one issue in efficiency and reusability. For example, imagine you set the Normal state of TextBoxStyle to have Padding: 3px, Margin: 2px, Overflow: Hidden. You then wish to change BackColor of the Over state and probably ForeColor of the Active state. Now you will see problem when in Over and Active state and notice that the basic attributes in Normal state are not applied. This is normal since that there are no connection between the Normal, Over and Active state. The last thing you can do is then copying the same attributes to Over and Active state.

        WebUI.NET Framework implements the solution for the DynamicStyle efficiency by providing BaseStyle property in the WebStyle class. With the BaseStyle feature, developers has the capability to inherit attributes that exist in a state's Style. In the scenario above, developers only have to set Over state's BaseStyle to Normal, and set Active state's BaseStyle to Over.

        During rendering process, the WebUI.NET Framework will automatically apply non-default attributes in the specified BaseStyle to the current rendered WebStyle. The framework also supports multiple inheritance such as in the scenario above where Active state inherits from Over and Over inherits from Normal.

        The Style rendering process, BaseStyle inheritance and other automation process fully takes the advantage of Advanced Serialization and Rich Object Model features of WebUI.NET Framework.

        Integration with Theme Architecture

        In addition to the External CssClass mode discussed in Style Rendering topic, WebUI.NET Framework includes theme core interfaces embedded in the control's architecture to enable application-wide theming. The interface worked in conjunction with Layout Manager interface and other features.

        See Also

        Feature
        {Advanced Serialization}
        {Theme Architecture}
        {Client Side Object Framework}


Theme Architecture

Theme Architecture
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > Theme Architecture

Glossary Item Box

Introduction

With many advantages and benefits introduced in framework-concept of component design such as unified object model, common features and functionalities and much more; WebUI.NET Framework also includes a unified theme architecture in the core control level that enables universal theming on all components that derived from WebUI.NET Framework.

The embedded theme architecture will be extensively utilized in upcoming new set of UI components which includes a visual Theme Manager designer that fully take advantages of the theme architecture. The Theme Manager is built around the VS.NET environment to provide a centralized, single interface management to WebUI Studio.NET (further called WS.NET) components' styles in the entire web application.

The theme architecture is possible with the framework-level integration and extensively combines existing key features such as the WebStyle, DynamicStyle, Layout Manager altogether to synergy a mature, rock solid foundation for the entire theme architecture.

Benefits

Following are just some of the top benefits offered by the built-in theme architecture:

  • Improved page's performance in overall.
    There will be improvement in overall performance of web page in the entire web application since that the page doesn't need to render each class for each style per components in the page. Any WS.NET components will automatically detect its state of EnableTheming and assign the class name to the entire style without producing the css output text in the page.
  • Reduced page's size.
    The class definitions of component will no longer be rendered in the page for each components. In parallel with improving page's performance, it also reduced page's size by 80. Imagine if you have 10 components in a page and each component produce about 5K of class definitions required to render the UI style, your page size will be increased up to 50K for only class definitions. With this theme architecture, no individual class definitions required and hence your page size could be reduced by more than 80.
  • Centralized administration and effective site management.
    Imagine that you have 100 pages of large web applications and your customer require you to change the default look&feel and styles for the components in the entire application, you would probably spend a week or more to carefully perform these changes or otherwise you will probably refuse to do these changes and let your customers unhappy. Certainly this has been a very major issue in web development today and yet no vendors are bothered to work on the solution. With the availability of WebUI.NET Framework and its theme architecture features, it has deliver a truly new level of usability and efficiency with the centralized management over the components' styles in entire web application.

Theme Architecture Hierarchy Diagram

Key features of theme architecture:

  • Dynamic compilation. The theme definition will be compiled dynamically by the theme architecture at runtime for an ASP.NET web application. The architecture is capable to perform the compilation only when the theme definition has been changed.
  • Single stylesheet output. Theme definition will be parsed and compiled into single CSS based stylesheet. The external css stylesheet will be automatically injected into page during runtime.
  • XML-based Theme Definition. Theme definition has its format in XML for better interoperability and easier management. A theme definition has ".istheme" extension.
  • Intersoft Layout File for style definition. The style definition of each component is using the same layout format as in Layout Manager. See Layout Manager link below to learn more.
  • Theme location. There are 2 types of location where the theme definitions are stored, those are: Global and Private. Global location means that the theme definitions are located at Virtual Directory level, the default is in "/CommonLibrary/Themes/" (See Centralized Client Files to learn more). The Private location means that the theme definition and its entire data files are stored under the root web application, the default is "~/ISThemes/".
    Use of Global theme location is recommended for better reusability. You only need to create the definitions once and use them in multiple web applications.
  • Multiple theme group. Refer to the diagram above, a theme can contains multiple groups so called "ThemeGroup". ThemeGroup is provided to enable greater level of flexibility in styles customization in page level theme. ThemeGroup contains the component and style definition as well as subscribe pages and components. With the ThemeGroup, you can create one default group which contains the components list and styles that will be applied to all pages in the web application. You can then create separate groups for specific components list and styles, and specific pages and controls which will use its own style definition. For example, the caption bar should appear in Red for Tasks Management page and Blue for Accounts Management page, while leaving all other components to use default ThemeGroup definition.
  • Page level theme. Inside the ThemeGroup definition, you can also enable or disable the theming for specific page. For example, you might want to disable the theming for all controls in Administration page. This can be done through the configuration at <Page> node under the ThemeGroup.
  • Instance level theme. Under the <Page> node, you can further customize the styles for each individual component. The individual component is differentiated with its control ID. The <Control> node enables you to turn off the theming for the specific control or apply different style definition for the specific control.
  • Session/User personalized theme. By default, the overall theme architecture is performed at application level. That means, each theme definition, the ThemeGroup and its entire settings are automatically applied to the application without additional programming or codes. Every users that accessed the application will see the same look&feel. For even greater flexibility, the built-in theme architecture has been designed to allow user personalized theming which believed to be one key requirement in today's business applications.

Theme Definition Sample

Although it is not recommended to programmatically write the theme definition by your own due to the complexity of the theme architecture concept and features, at least you can try to write simple sample to demonstrate the capability of built-in theme architecture for the current time, until the Visual Theme Manager is available in early 2005.

Following is a sample theme definition:

<?xml version="1.0" encoding="utf-8" ?>
<ISTheme>
<ThemeGroup Name="Default" BaseGroup="" IsDefault="True">
<ISComponents>
<Component Type="ISNet.WebUI.WebControls.WebInput" Assembly="ISNet.WebUI.WebInput" LayoutName="Office 2003" DataFile="WI_Office2003.ISL"/>
</ISComponents>
</ThemeGroup>
<ThemeGroup Name="GroupA" BaseGroup="Default">
<ISComponents>
<Component Type="ISNet.WebUI.WebControls.WebInput" Assembly="ISNet.WebUI.WebInput" LayoutName="MS Money" DataFile="WI_Money.ISL"/>
</ISComponents>
<Pages>
<Page FileName="~/WebForm3.aspx" EnableTheming="False" />
<Page FileName="~/WebForm1.aspx" EnableTheming="True" ThemedControls="Partial">
<Controls>
<Control ID="WebInput6" EnableTheming="False" />
<Control ID="WebInput3" />
<Control ID="WebInput2" Type="ISNet.WebUI.WebControls.WebInput" LayoutName="Gray 3D" DataFile="WI_Gray3D.ISL" />
</Controls>
</Page>
</Pages>
</ThemeGroup>
<ThemeGroup Name="GroupB" BaseGroup="Default">
<ISComponents>
<Component Type="ISNet.WebUI.WebControls.WebInput" Assembly="ISNet.WebUI.WebInput" LayoutName="Win XP" DataFile="WI_WinXPBlue.ISL"/>
</ISComponents>
<Pages>
<Page FileName="~/Styles.aspx" ThemedControls="Partial">
<Controls>
<Control ID="WEBINPUT4" />
</Controls>
</Page>
</Pages>
</ThemeGroup>

</ISTheme>

Further technical discussions of theme architecture will be provided later in separate technical articles or documentation.

See Also

Feature
{Dynamic Style}
{Layout Manager}
{Centralized Client Files}


Centralized Client Files

Centralized Client Files
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > Centralized Client Files

Glossary Item Box

Introduction

Intersoft has introduced centralized concept for client side files since its initial products. WebUI.NET Framework implements and further enhances the concept to enable greater deployment experience.

The centralized client files location is so called "CommonLibrary" Virtual Directory now available in the Framework Installer, instead of creating it in each product's Installer that oftenly causing issues and conflicts. To learn more about where CommonLibrary will be installed and the relation with high-end product installation, please refer to the Installation Wizard link in the See Also section below.

The CommonLibrary concept introduced one single and centralized location for the client side files that required by Intersoft's components. This will benefits in usability and efficiency where the CommonLibrary only need to be mapped once in IIS (automatically done by Framework Installer for development) and reused further, instead of requiring developers to copy the same set of files into each web application's subfolder.

What does CommonLibrary contain?

To give a better picture and ideas of what CommonLibrary is, please refer to the following screenshot:

By default, CommonLibrary contains any client side files that required by Intersoft's components. It could include Images, Shared scripts (CSOF) as well as specific set of scripts required by each component which usually grouped in a folder with the same name of the component.

The "CommonLibrary" name has been set as default in all Intersoft's components which referred in SharedScriptDirectory, ScriptDirectory and ImagesDirectory. Although it is not recommended to change the name, you still have the flexibility to use name other than "CommonLibrary" or specify different Virtual Directory location for the CommonLibrary. In case that you need to change the name or path, please use Application-wide Configurations feature. Refer to the link below in See Also section.

As you installed new Intersoft's components, the component's required client side files will be automatically added to the existing CommonLibrary without affecting existing files of other installed components.

See Also

Reference
{Installation Wizard}

Deployment
{Application-wide Configurations}


Powerful Base Class Libraries

Powerful Base Class Libraries
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Framework Features > Powerful Base Class Libraries

Glossary Item Box

In addition to the rich features and innovative components design model discussed in previous topics, WebUI.NET Framework also includes powerful class libraries that component developers can utilize.

The following classes are extensively used in WebUI Studio.NET members to deliver integrated, single interface and consistency approach:

  • ISNetBaseValidator
  • AccessKeyConverter
  • ISCollectionBase
  • INamedObject
  • ClientBehavior
  • ClientEditor
  • CultureInfoObject
  • DynamicStyle
  • EditorWindowInfo
  • LayoutInfo
  • Location
  • Settings
  • WebStyle
  • WindowInfo

Although end developers would not required to access these objects directly, it is recommended to learn the best practices of the usage in the top-level components to get familiar with it. It will be reusable with the same concept and usage for future WebUI Studio.NET components.

End developers are not authorized to utilize the WebUI.NET Framework for individual development in either components or web applications. If you are individual component developers or component vendor and wish to establish strategic relationship to utilize WebUI.NET Framework, please send your inquiry to corporate@intersoftpt.com


Deployment

Deployment
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Deployment

Glossary Item Box

This section contains information about deployment in WebUI Framework V3.0

In This Section

Redistributable Files

Application-wide Configurations

Deplopying to Windows 2003 Server

Configuring JSE as MIME Type


Redistributable Files

Redistributable Files
WebUI Framework > About WebUI Framework V3.0 > Introduction > Deployment > Redistributable Files

Glossary Item Box

Following is the list of assemblies that are redistributable:

File Name | Location | Description
ISNet.dll | [Program Files]Intersoft Solutions\WebUI.NET Framework\Bin | Intersoft core objects, interfaces and implementation.
ISNet.WebUI.dll | [Program Files]Intersoft Solutions\WebUI.NET Framework\Bin | Intersoft core controls and base libraries.

Following is the list of client files in CommonLibrary folder that are redistributable:

File Name | Location | Description
Images File (*.jpg; *.gif; *.png) | Images | Image files that shipped along with product installation.
ISCore.jse | Shared | Intersoft client object framework and core implementation.
ISCultureInfo.jse | Shared | Intersoft culture info object and implementation.
ISCoreValidator.jse | Shared | Intersoft core validator objects and implementation.

The CommonLibrary Virtual Directory is created automatically during the installation of WebUI.NET Framework. By default, it should be pointed to [Program Files]Intersoft Solutions\CommonLibrary.

See Also

Feature
{Centralized Client Files}


Application-wide Configurations

Application-wide Configurations
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Deployment > Application-wide Configurations

Glossary Item Box

One of the unique feature introduced since the initial products is the ability to configure specific deployment-related properties via web.config. WebUI.NET Framework further enhanced this capability by adding more properties that configurable through web.config. It now also supports relative application path by using ~ character. The application-wide Configurations feature allows centralized configuration for common deployment properties such as ScriptDirectory etc, which dramatically increasing effective and efficient maintainance.

Following is the list of properties that are configurable through web.config.

  • SharedScriptDirectory.
  • ScriptDirectory.
  • ImagesDirectory.
  • ViewStateStorage.
  • RuntimeLicenseKey.
  • PageCachePriority.
  • PageCacheDuration.
The settings specified in web.config will only be applied to instances' properties that have Default value (unchanged).

The format of the key used for the configuration is AssemblyFullName.vProductVersion.Properties.

Examples:

The sample configuration in web.config below will change the property value of ViewStateStorage and ImagesDirectory to all WebInput V1.0.5000 instances in the application.

<configuration>

<appSettings>

<add key="ISNet.WebUI.WebInput.v1_0_5000.ViewStateStorage" value="Session" />

<add key="ISNet.WebUI.WebInput.v1_0_5000.ImagesDirectory" value="~/Images/" />

</appSettings>

... other settings

</configuration>

Additional application-wide configurations may be available specifically per product. Please refer to the Application-wide Configurations topic in the product's help file.


Deploying to Windows 2003 Server

Deploying to Windows 2003 Server
WebUI Framework > About WebUI Framework V3.0 > Introduction > Deployment > Deploying to Windows 2003 Server

Glossary Item Box

Please follow the guidelines below to deploy your web applications containing WebUI Studio.NET components to Windows 2003 Server.

  1. XCOPY deployment.
    You can copy all required application files along with Intersoft components' assemblies in private bin folder to the destination folder in your Windows 2003 Server.
  2. CommonLibrary deployment.
    You need to copy the CommonLibrary folder containing all required client side files such as Images and Scripts only once to your server's wwwroot folder. If you have previously deployed CommonLibrary that used in other applications, you don't need to copy it again. However, it is recommended to double check the version of scripts to make sure you deployed latest scripts accordingly.
    If you decided to use different version of assemblies (Build number difference) in different applications, it is highly recommended that you configure the script's path to include the version number to avoid version conflicts. Example: /CommonLibrary/[ProductName]/[FullVersionNumber]
    Each major version of component will not conflict between each and another as the default ScriptDirectory already includes the major version number.
  3. Add ".jse" extension to MIME type.IIS 6.0 in Windows 2003 comes with the "locked" state for greater security control purpose. By default, IIS 6.0 will only deliver web contents which MIME type has been registered in the metabase. Intersoft's components are using Encoded JScript as the client side runtime which MIME type is not registered by default on a fresh installed Windows 2003 server. This is causing all web pages that implement Encoded JScript to no longer working since that it is not delivered to client.
    Please refer to the Configuring JSE as MIME type in the See Also section below.

See Also

Feature
{Centralized Client Files}

Deployment
{Application-wide Configurations}

Support
{Configuring JSE as MIME Type}


Configuring JSE as MIME Type

Configuring JSE as MIME Type
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Deployment > Configuring JSE as MIME Type

Glossary Item Box

Please follow below guidelies to add the .jse to the MIME Type in IIS metabase.
  • Open Internet Information Services (IIS) Manager.
  • Right click on the SERVERNAME (local computer) node.
  • Click on the MIME Types button.
  • Click New to add entry.
  • Type ".jse" in the Extension textbox. (Without double quote)
  • Type "application/x-javascript". (Without double quote)
  • Click OK to close the dialog box. Click OK to close the Property dialog box.
  • Right click on the SERVERNAME again.
  • Select "All Tasks"
  • Click "Restart IIS..." to apply the changes.
It is necessary to restart your server's IIS in order to have the changes taken affect immediately. If you're using 3rd party hosting service, please consult with the hosting support team to configure the MIME Type.

MORE INFORMATION

For more information, please read IIS 6.0 Help and References.


Licensing

Licensing
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Licensing

Glossary Item Box

This section contains information about licensing in WebUI Framework V3.0.

In This Section

License Agreement

Copyright Information


License Agreement

License Agreement
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Licensing > License Agreement

Glossary Item Box

End User License Agreement for Intersoft Solutions Corp.

VERY IMPORTANT -- By installing the WebUI.NET Framework software (herein the 'SOFTWARE') developed by Intersoft Solutions Corp (hereinafter the 'VENDOR'), you are accepting the following License Agreement.

NOTE: YOU SHOULD HAVE VALIDLY LICENSED COPY OF ANY VERSION OR EDITION OF INTERSOFT WEBUI STUDIO.NET COMPONENTS TO BE AUTHORIZED TO INSTALL, COPY AND LEGALLY USE THE SOFTWARE AND ITS SUPPORTING APPLICATIONS UNDER THIS EULA.

I. LICENSE AGREEMENT. This is a legal agreement between you (either an individual or a single entity) and VENDOR. By installing the SOFTWARE you are agreeing to be bound by the terms of this agreement. If you do not agree to the terms of this agreement, please kindly click the [CANCEL] icon to exit now. The installation process will be immediately terminated.

II. OWNERSHIP; GRANT OF LICENSE. This is a license agreement and NOT an agreement for sale. The VENDOR hereby grants to you, and you accept, a non-exclusive, non-transferable license to use, copy and modify the SOFTWARE only as authorized below.

III. PERMITTED USES. This LICENSE grants you the following rights:

A. The SOFTWARE is licensed per individual developer. You may make copies on more than one computer, as long as the use of the SOFTWARE is by the same developer. If you have purchased a "multi-pack" license, you may use a copy of the SOFTWARE identified in the multi-pack on the number of computers associated with the multi-pack (e.g. a five user multi-pack allows you to use the SOFTWARE on up to five computers concurrently or by five different developers, the ten user multi-pack on up to ten computers concurrently or by ten different developers). The SOFTWARE is in "use" on a computer when it is loaded into temporary memory (i.e. RAM) or installed into permanent memory (e.g. hard disk, CD-ROM, or other storage devise) of that computer. However, installation on a network server for the sole purpose of internal distribution to one or more other computer(s) shall not constitute "use" for which a separate license is required, provided you have a separate license for each computer to which the SOFTWARE is distributed.

B. Solely with respect to electronic documents included with the SOFTWARE, you may make a copy (either in hardcopy or electronic form) for each developer for which the Software has been licensed as described in Section III.A, above; provided, that such copies shall be used only by such developer for internal purposes and are not to be republished or distributed to any other third party.

C. Runtime and Royalty. You may deploy your web applications using the SOFTWARE to any number of production server or clients with no additional charges. The SOFTWARE runtime files shouldn�??t be modified in any ways prior to deploying and all copyright notices should be retain.

D. Redistributable Files. You are permitted to redistribute only the files listed below:

  • ISNET.DLL
  • ISNET.WEBUI.DLL

Other files that are not listed above are provided as integral component of the SOFTWARE and is provided for design-time only purpose accompanying the licensed members of Intersoft WebUI Studio.NET.

IV. PROHIBITED USES. You may not, without the prior written permission of the VENDOR:

A. Disassemble, decompile or "unlock", decode or otherwise reverse translate or engineer, or attempt in any manner to reconstruct or discover any source code or underlying algorithms of SOFTWARE provided in object code form only.

B. Use, copy, modify, or merge copies of the SOFTWARE and any accompanying documents except as permitted in this LICENSE.

C. Transfer, rent, lease, or sublicense the SOFTWARE.

D. Separate the software programs comprising the SOFTWARE for use by more than one user at a time.

E. Redistribute any portion of codes or files that are not listed in Section 3D.

V. COPYRIGHT. All title and copyrights in and to the SOFTWARE (including but not limited to any images, photographs, animation, video, audio, music, text and "applets" incorporated into the SOFTWARE) and the accompanying printed materials are owned by the VENDOR or its suppliers. The SOFTWARE is protected by Indonesian copyright laws and international treaty provisions. All rights are reserved worldwide. You must treat the SOFTWARE like any other copyrighted material, except that you may, in addition to the copies permitted in this LICENSE, make one copy of the SOFTWARE solely for backup or archival purposes. No part of the accompanying printed materials may be reproduced, transmitted, transcribed, stored in any retrieval system, or translated into any language by any means without the express prior written permission of the VENDOR.

VI. TERMINATION

This LICENSE and your right to use the SOFTWARE will terminate immediately without notice from the VENDOR if you fail to comply with the terms and conditions of this LICENSE. Upon termination, you agree to destroy the SOFTWARE, including all accompanying documents and copies. This is in addition to and not in lieu of any criminal, civil or other remedies available to the VENDOR.

VII. LIMITED WARRANTY.

To the maximum extent permitted by applicable law, the VENDOR hereby disclaim with respect to the SOFTWARE and its integral components all warranties and conditions, whether express, implied or statutory, including, but not limited to, any (if any) warranties, duties or conditions of or related to: merchantability, fitness for a particular purpose, lack of viruses, accuracy or completeness of responses, results, workmanlike effort and lack of negligence. Also there is no warranty, duty or condition of title, quiet enjoyment, quiet possession, correspondence to description or non-infringement. The entire risk arising out of use or performance of SOFTWARE and any components remains with you.

Exclusion of incidental, consequential and certain other damages. To the maximum extent permitted by applicable law, in no event shall VENDOR or its suppliers be liable for any special, incidental, indirect, punitive or consequential damages whatsoever (including, but not limited to, damages for: loss of profits, loss of confidential or other information, business interruption, personal injury, loss of privacy, failure to meet any duty (including of good faith or of reasonable care), negligence, and any other pecuniary or other loss whatsoever) arising out of or in any way related to the use of or inability to use the SOFTWARE or its supporting applications, or the provision of or failure to provide support services, or otherwise under or in connection with any provision of this agreement, even if the VENDOR has been advised of the possibility of such damages.

Limitation of liability and remedies. Notwithstanding any damages that you might incur for any reason whatsoever (including, without limitation, all damages referenced above and all direct or general damages), the entire liability of VENDOR under any provision of this agreement and your exclusive remedy for all of the foregoing shall be limited to actual damages incurred by you based on reasonable reliance up to the greater of the amount actually paid by you for the SOFTWARE and licensed products. The foregoing limitations, exclusions and disclaimers shall apply to the maximum extent permitted by applicable law, even if any remedy fails its essential purpose.

ACKNOWLEDGEMENTS. You acknowledge that you have read this Agreement, understand it, and agree to be bound by its terms and conditions.


Copyright Information

Copyright Information
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Introduction > Licensing > Copyright Information

Glossary Item Box

Information in this document, including URL and other Internet Web site references, is subject to change without notice. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Intersoft Solutions Corp.

Intersoft Solutions, Intersoft Solutions Logo, A Better Web Experience, WebUI.NET Framework, WebUI.NET Framework Logo, WebUI Studio.NET Family, WebCombo.NET, WebGrid.NET, WebInput.NET, WebUIControls.NET are either trademarks or registered trademarks of Intersoft Solutions Corporation.

Copyright © 2000-2004 Intersoft Solutions Corp. All rights reserved.

ActiveX, Internet Explorer, Microsoft, Visual Basic, Visual Basic .NET, Visual C# .NET, Visual C++ .NET, Visual Studio, Visual Studio .NET, Windows, Windows 95, Windows 98, Windows 2000, Windows Millennium Edition, Windows .NET server family, Windows NT, and Windows XP are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

The names of actual companies and products mentioned herein may be the trademarks or registered trademarks of their respective owners.


Application

Application
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Application

Glossary Item Box

This section contains application in WebUI Framework V3.0..

In This Section

Update Manager


Overview

Overview
WebUI Framework > About WebUI Framework V3.0 > Applications > Overview

Glossary Item Box

Along with the final release of Intersoft's new framework-based component architecture, a major result of integration benefits is an Update Manager application.

Intersoft Corp. has taken essential steps by not only delivering high quality, feature rich and rock-solid powerful components; but also enabling seamless components updating. The Update Manager is designed for this purpose, to let developers apply latest updates as easy as possible and as quick as possible, without extra efforts.

When a new Update arrived, all the developers need to do is by launching centralized Update Manager application as you can see in following screenshot. The Update Manager will scan for available latest Updates according to current installed licensed products.

After the list of new product Updates appear, you simply check for the Updates you wish to apply. You can then either choose Install Updates (recommended) and have the Update Manager download and perform automatic installation for you; or choose Download Updates to only perform the download (no installation of Updates).

The rest of the Update process will be done intelligently by Update Manager, such as it will determine whether an assembly should be placed in GAC, whether a file is a type of assembly or client files, where it should be copied and so on.

Internet connection is required in order to obtain Updates. If you're under firewall, you can change the Proxy settings by clicking the Settings link in the Main Tasks group bar.

The Update Manager application comes with the installation of WebUI.NET Framework and should be installed under WebUI Studio.NET\Framework program group. It serves as the centralized interface for all update needs for all existing and future WebUI Studio.NET-family components.

By default, the Updates for WebUI.NET Framework alone will be available to everyone. However, beta and trial installation will not be checked. Only retail version with valid licensed products will be checked.

If you own a valid license of the products, but the latest Update did not appear in the Updates List, your license was probably in Blocked state for some reasons. In such circumstances, please email accounts@intersoftpt.com to obtain more information.

See Also

Update Manager
{Frequently Asked Questions}


Frequently Asked Questions

Frequently Asked Questions
Send comments on this topic.
WebUI Framework > About WebUI Framework V3.0 > Applications > Update Manager > Frequently Asked Questions

Glossary Item Box

What is Intersoft Update Manager?
Intersoft Update Manager is a .NET-based Windows application featuring centralized interface to obtain latest Updates for any installed Intersoft components that built on WebUI.NET Framework. The Updates address known issues and improvements in stability, performance as well as new enhancements.

How does it work?
Intersoft Update Manager will establish connection to Intersoft's Web Service by using HTTP protocol. Make sure you have connected to Internet before performing Updates scan. The Update Manager also scans your computer for any valid Components and submit the required information in order to obtain the Updates. You can then choose the updates that you want to download or install it automatically.

What does Update Manager perform during installation of selected Updates?
Update Manager will determine the action required for each Updated file, such as whether the file should overwrite the existing/older file or whether the file should be placed as new stand-alone file. For most components Update tasks, the Update Manager will backup the existing version to Update Manager's subfolder labeled 'Backup' following the subfolder 'ProductName_<CurrentDateTime>' and replace the new assemblies to installation folder. The same task will also be applied to client side scripts if any.

What types of updates can I get?
You are entitled to receive any minor updates, Hotfixes as well as Service Pack for all registered Intersoft's components regardless of the number of developers license.

What products are available in Update Manager?
All Intersoft WebUI Studio.NET-family components.

I'm currently using Trial version of your components, can I obtain the latest Trial version of the product Updates using Update Manager?
No, Update Manager will only check the Updates for valid licensed components. Beta and Trial version installation will not be checked.

Can I obtain Updates without using Update Manager?
Yes, you can also obtain Updates without has to use Intersoft Update Manager. You can login to web-based Intersoft Developer Network and download the Updates manually. However, you will need to manually updating all assemblies and client side scripts (if any).

What do I need to do before installing the Updates?
You are recommended to save all your projects and close all VS.NET instances. Restarting IIS process is sometimes required to avoid DLL locking, which could cause the Update Manager to fail when trying to update the assembly.

Do I need to recompile my project after installing the Updates?
Yes, you will need to recompile your projects that utilized the Updated components. The Update Manager helps you to perform the required assembly and client side scripts update to avoid update mistakes as well as for better efficiency and better experience in developing with Intersoft's components. However, the Update Manager doesn't modify or recompile any of your existing projects.

What should I do if I got installation errors during Updates?
Please log the error and capture the screen if possible. Next, send us the logged errors and screenshots to Intersoft Support Team <technical@intersoftpt.com>

Can I see what Updates which previously installed?
Yes, you can see the history of Updates by clicking the View Installation History link in the Main Tasks bar.

Could it be possible that the Update Manager replaces an older file in the Update package to the current installed files?
No, the Update Manager is intelligent enough to perform "passive" updating. Passive updating means that it will only perform the file-basis update when the existing file has either older date or older version.

I noticed from your website that the latest Update for one of my purchased component is now available. However, the Update did not appear after I performed the Updates Scanning. What happened?
Make sure that you installed the product successfully without any errors during installation. Also make sure you entered valid license key. If you still can't see the Update, your license key could be probably in Blocked state. A license key could be blocked due to many reasons, the most reasons are related to legality. Please send email to accounts@intersoftpt.com to obtain more information.


How-to: Enable quadratic sliding animation

How-to: Enable quadratic sliding animation
Send comments on this topic.

Glossary Item Box


How-to: Enable Sliding Animation in WebCombo

How-to: Enable Sliding Animation in WebCombo
Send comments on this topic.

Glossary Item Box


How-to: Enable Vista-style zoom animation in WebDesktopManager

How-to: Enable Vista-style zoom animation in WebDesktopManager
Send comments on this topic.

Glossary Item Box


How-to: Enable Vista-style zoom animation in WebDialogBox

How-to: Enable Vista-style zoom animation in WebDialogBox
Send comments on this topic.

Glossary Item Box


How-to: Integrate a WebContextMenu control to WebCombo

How-to: Integrate a WebContextMenu control to WebCombo
Send comments on this topic.

Glossary Item Box


How-to: Integrate a WebTreeView control to WebCombo

How-to: Integrate a WebTreeView control to WebCombo
Send comments on this topic.

Glossary Item Box


New Component for Silverlight�?� 1.0 Platform: WebAqua

New Component for Silverlight�?� 1.0 Platform: WebAqua

Glossary Item Box

Refer to WebAqua whitepaper

See Also

Other Resources
{New Generic-based Collection, Interface and Object}
{New Infrastructure for Silverlight-based Component Products}
{New Component: WebScheduler}
{New Component: WebCallout}


New Component: WebCallout

New Component: WebCallout

Glossary Item Box

Refer to WebCallout whitepaper.

See Also

Other Resources
{New Generic-based Collection, Interface and Object}
{New Infrastructure for Silverlight-based Component Products}
{New Component for Silverlight�?� 1.0 Platform: WebAqua}
{New Component: WebScheduler}


New Component: WebScheduler

New Component: WebScheduler

Glossary Item Box

Refer to WebSchedulter whitepaper

See Also

Other Resources
{New Generic-based Collection, Interface and Object}
{New Infrastructure for Silverlight-based Component Products}
{New Component for Silverlight�?� 1.0 Platform: WebAqua}
{New Component: WebCallout}


OnTheFly Preview

OnTheFly Preview
Send comments on this topic.

Glossary Item Box


How-to: Set WebDialogBox to Modeless mode

How-to: Set WebDialogBox to Modeless mode
Send comments on this topic.

Glossary Item Box


Update Manager

Update Manager
Send comments on this topic.

Glossary Item Box